PowerPoint 演示文稿中的 3D 效果使内容更具吸引力。使用 3D 文本或形状,您可以增强交互性并吸引观众的注意力。在 .NET 应用程序中处理 PowerPoint 自动化时,您可能需要为演示文稿添加 3D 效果。为此,本文介绍了如何在 C# 中应用 PowerPoint PPT 中的 3D 效果。
- .NET API 在 PowerPoint 中创建 3D 效果
- 用 C# 在 PowerPoint 中创建 3D 文本
- 在 C# 中的 PowerPoint 中创建 3D 形状
- 为 3D 形状设置渐变
- 将 3D 效果应用于 PowerPoint 中的图像
.NET API 在 PowerPoint 中应用 3D 效果
Aspose.Slides for .NET 是一个了不起的 API,它提供了一系列功能来实现 PowerPoint 自动化。使用 API,您可以无缝地创建和操作演示文稿。我们将使用此 API 在 PowerPoint 演示文稿中应用 3D 效果。您可以 下载 API 的 DLL 或使用 NuGet 安装它。
PM> Install-Package Aspose.Slides.NET
用 C# 在 PowerPoint 中创建 3D 文本
以下是使用 C# 在 PowerPoint PPT 中创建 3D 文本片段的步骤。
- 首先,使用 Presentation 类创建一个新的 PPT 或加载现有的。
- 然后,使用 AddAutoShape() 方法添加一个新的矩形形状。
- 设置形状的属性,例如填充类型、文本等。
- 将形状内的文本引用到 Portion 对象中。
- 将格式应用于文本部分。
- 获取 TextFrame 内部形状的参考。
- 使用 TextFrame.TextFrameFormat.ThreeDFormat 中的属性应用 3D 效果。
- 最后,使用 Presentation.Save(String, SaveFormat) 方法保存演示文稿。
以下代码示例演示如何在 PowerPoint 中使用 C# 创建 3D 文本。
// 创建演示文稿
using (Presentation presentation = new Presentation())
{
// 创建一个矩形
IAutoShape shape = presentation.Slides[0].Shapes.AddAutoShape(ShapeType.Rectangle, 200, 150, 250, 250);
shape.FillFormat.FillType = FillType.NoFill;
shape.LineFormat.FillFormat.FillType = FillType.NoFill;
shape.TextFrame.Text = "3D Text";
// 获取文本部分
Portion portion = (Portion)shape.TextFrame.Paragraphs[0].Portions[0];
portion.PortionFormat.FillFormat.FillType = FillType.Pattern;
portion.PortionFormat.FillFormat.PatternFormat.ForeColor.Color = Color.DarkOrange;
portion.PortionFormat.FillFormat.PatternFormat.BackColor.Color = Color.White;
portion.PortionFormat.FillFormat.PatternFormat.PatternStyle = PatternStyle.LargeGrid;
shape.TextFrame.Paragraphs[0].ParagraphFormat.DefaultPortionFormat.FontHeight = 128;
// 访问文本框架
ITextFrame textFrame = shape.TextFrame;
// 设置“Arch Up”艺术字变换效果
textFrame.TextFrameFormat.Transform = TextShapeType.ArchUp;
// 应用 3D 效果
textFrame.TextFrameFormat.ThreeDFormat.ExtrusionHeight = 3.5f;
textFrame.TextFrameFormat.ThreeDFormat.Depth = 3;
textFrame.TextFrameFormat.ThreeDFormat.Material = MaterialPresetType.Plastic;
textFrame.TextFrameFormat.ThreeDFormat.LightRig.Direction = LightingDirection.Top;
textFrame.TextFrameFormat.ThreeDFormat.LightRig.LightType = LightRigPresetType.Balanced;
textFrame.TextFrameFormat.ThreeDFormat.LightRig.SetRotation(0, 0, 40);
textFrame.TextFrameFormat.ThreeDFormat.Camera.CameraType = CameraPresetType.PerspectiveContrastingRightFacing;
// 保存演示文稿
presentation.Save("3D-Text.pptx", SaveFormat.Pptx);
}
以下屏幕截图显示了上述代码示例的输出。
在 C# 中的 PowerPoint 中创建 3D 形状
与文本类似,您可以将 3D 效果应用于 PowerPoint 演示文稿中的形状。以下是使用 C# 在 PowerPoint 中创建 3D 形状的步骤。
- 首先,使用Presentation类创建一个新的PPT。
- 使用 AddAutoShape() 方法添加一个新的矩形形状。
- 使用 Shape.TextFrame.Text 属性设置形状的文本。
- 使用 IAutoShape.ThreeDFormat 中的属性将 3D 效果应用于形状。
- 最后,使用 Presentation.Save(String, SaveFormat) 方法保存演示文稿。
以下代码示例演示如何使用 C# 将 3D 效果应用于 PowerPoint 中的形状。
// 创建演示文稿
using (Presentation presentation = new Presentation())
{
// 添加新形状
IAutoShape shape = presentation.Slides[0].Shapes.AddAutoShape(ShapeType.Rectangle, 200, 150, 200, 200);
// 设置文本
shape.TextFrame.Text = "3D";
shape.TextFrame.Paragraphs[0].ParagraphFormat.DefaultPortionFormat.FontHeight = 64;
// 应用 3D 效果
shape.ThreeDFormat.Camera.CameraType = CameraPresetType.OrthographicFront;
shape.ThreeDFormat.Camera.SetRotation(20, 30, 40);
shape.ThreeDFormat.LightRig.LightType = LightRigPresetType.Flat;
shape.ThreeDFormat.LightRig.Direction = LightingDirection.Top;
shape.ThreeDFormat.Material = MaterialPresetType.Flat;
shape.ThreeDFormat.ExtrusionHeight = 100;
shape.ThreeDFormat.ExtrusionColor.Color = Color.Blue;
// 保存演示文稿
presentation.Save("3D-Shape.pptx", SaveFormat.Pptx);
}
下面是我们执行这段代码后得到的 3D 形状。
为 3D 形状创建渐变
您还可以按照以下步骤将渐变效果应用于形状。
- 首先,使用Presentation类创建一个新的PPT。
- 使用 AddAutoShape() 方法添加一个新的矩形形状。
- 使用 Shape.TextFrame.Text 属性设置形状的文本。
- 将 IAutoShape.FillFormat.FillType 设置为 FillType.Gradient 并设置渐变颜色。
- 使用 IAutoShape.ThreeDFormat 中的属性将 3D 效果应用于形状。
- 最后,使用 Presentation.Save(String, SaveFormat) 方法保存演示文稿。
以下代码示例演示如何将渐变效果应用于 PowerPoint 中的形状。
// 创建演示文稿
using (Presentation presentation = new Presentation())
{
// 添加新形状
IAutoShape shape = presentation.Slides[0].Shapes.AddAutoShape(ShapeType.Rectangle, 200, 150, 200, 200);
// 设置文本
shape.TextFrame.Text = "3D";
shape.TextFrame.Paragraphs[0].ParagraphFormat.DefaultPortionFormat.FontHeight = 64;
// 应用渐变
shape.FillFormat.FillType = FillType.Gradient;
shape.FillFormat.GradientFormat.GradientStops.Add(0, Color.Blue);
shape.FillFormat.GradientFormat.GradientStops.Add(100, Color.LightBlue);
// 应用 3D 效果
shape.ThreeDFormat.Camera.CameraType = CameraPresetType.OrthographicFront;
shape.ThreeDFormat.Camera.SetRotation(20, 30, 40);
shape.ThreeDFormat.LightRig.LightType = LightRigPresetType.Flat;
shape.ThreeDFormat.LightRig.Direction = LightingDirection.Top;
shape.ThreeDFormat.Material = MaterialPresetType.Flat;
shape.ThreeDFormat.ExtrusionHeight = 100;
shape.ThreeDFormat.ExtrusionColor.Color = Color.Blue;
// 保存演示文稿
presentation.Save("3D-Shape-Gradient.pptx", SaveFormat.Pptx);
}
以下是应用渐变效果后的 3D 形状。
在 C# 中将 3D 效果应用于 PowerPoint 中的图像
Aspose.Slides for .NET 还允许您将 3D 效果应用于图像。以下是在 C# 中执行此操作的步骤。
- 使用 Presentation 类创建一个新的 PPT。
- 使用 AddAutoShape() 方法添加一个新的矩形形状。
- 将 IAutoShape.FillFormat.FillType 设置为 FillType.Picture 并添加图像。
- 使用 IAutoShape.ThreeDFormat 中的属性将 3D 效果应用于形状。
- 使用 Presentation.Save(String, SaveFormat) 方法保存演示文稿。
以下是使用 C# 将 3D 效果应用于 PPT 中的图像的步骤。
// 创建演示文稿
using (Presentation presentation = new Presentation())
{
// 添加新形状
IAutoShape shape = presentation.Slides[0].Shapes.AddAutoShape(ShapeType.Rectangle, 200, 150, 200, 200);
// 添加图片
shape.FillFormat.FillType = FillType.Picture;
shape.FillFormat.PictureFillFormat.Picture.Image = presentation.Images.AddImage(File.ReadAllBytes("tiger.bmp"));
shape.FillFormat.PictureFillFormat.PictureFillMode = PictureFillMode.Stretch;
// 应用 3D 效果
shape.ThreeDFormat.Camera.CameraType = CameraPresetType.OrthographicFront;
shape.ThreeDFormat.Camera.SetRotation(20, 30, 40);
shape.ThreeDFormat.LightRig.LightType = LightRigPresetType.Flat;
shape.ThreeDFormat.LightRig.Direction = LightingDirection.Top;
shape.ThreeDFormat.Material = MaterialPresetType.Flat;
shape.ThreeDFormat.ExtrusionHeight = 100;
shape.ThreeDFormat.ExtrusionColor.Color = Color.DarkGray;
// 保存演示文稿
presentation.Save("3D-Image.pptx", SaveFormat.Pptx);
}
以下是我们应用 3D 效果后得到的结果图像。
获得免费许可证
您可以获得 免费临时许可证 以使用 Aspose.Slides for .NET,而不受评估限制。
结论
在本文中,您学习了如何使用 C# 在 PowerPoint 演示文稿中应用 3D 效果。我们已经介绍了如何创建 3D 文本或形状并将 3D 效果应用于 PPT 或 PPTX 演示文稿中的图像。如果您想了解更多关于 Aspose.Slides for .NET 的信息,您可以访问 文档。此外,您可以将您的查询发布到我们的 论坛。