演示文稿中的 SmartArt 用于以视觉形式提供信息。有时,选择使简单的文本更具吸引力。而在其他情况下,它用于演示流程图、流程、不同实体之间的关系等。下面将介绍如何使用 C# 以编程方式在 PowerPoint 演示文稿中创建 SmartArt。

目录

在 PowerPoint 中创建 SmartArt 的 .NET API

使用 C# 在 PowerPoint 中创建 SmartArt 形状

使用 C# 在 PowerPoint 中访问 SmartArt 形状

使用 C# 更改 SmartArt 形状的样式


在 PowerPoint 中创建 SmartArt 的 .NET API

为了在 PowerPoint 演示文稿中使用 SmartArt,我们将使用 Aspose.Slides for .NET。它是一个强大的类库,用于创建和操作 PowerPoint 和 OpenOffice 演示文稿。您可以通过NuGet安装 API  或 下载 其 DLL。

PM> Install-Package Aspose.Slides.NET

使用 C# 在 PowerPoint 中创建 SmartArt 形状

Aspose.Slides for .NET 提供了在演示文稿中创建 SmartArt 形状的最简单方法。为了演示,让我们使用 C# 在 PowerPoint 演示文稿中从头开始创建 SmartArt 形状。

  • 使用Presentation类创建一个新的演示文稿或加载一个现有的演示文稿。
  • 将所需幻灯片的引用获取到ISlide对象中。
  • 使用ISlide.Shapes.AddSmartArt()方法创建 SmartArt 。
  • 使用Presentation.Save(String, SaveFormat)方法保存更新的演示文稿。

以下代码示例展示了如何在 PowerPoint 演示文稿中创建 SmartArt 形状。

// Create a presentation or load existing one
using (Presentation pres = new Presentation())
{// Access the presentation slideISlide slide = pres.Slides[0];// Add SmartArt ShapeISmartArt smart = slide.Shapes.AddSmartArt(0, 0, 400, 400, SmartArtLayoutType.BasicBlockList);smart.AllNodes[0].TextFrame.Text = "First Block";smart.AllNodes[1].TextFrame.Text = "Second Block";// Save presentationpres.Save("SimpleSmartArt_out.pptx", Aspose.Slides.Export.SaveFormat.Pptx);
}

以下屏幕截图显示了上述代码示例的输出。

使用 C# 在 PowerPoint 中访问 SmartArt 形状

您还可以访问现有 PowerPoint 演示文稿中的 SmartArt 形状。访问后,您可以根据需要修改它们。以下是使用 C# 访问 PowerPoint 演示文稿中的 SmartArt 形状的步骤。

  • 使用Presentation类创建一个新的演示文稿或加载一个现有的演示文稿。
  • 将所需幻灯片的引用获取到ISlide对象中。
  • 使用ISlide.Shapes集合遍历幻灯片中的形状。
  • 如果形状是ISmartArt类型,则将其引用放入ISmartArt对象中。
  • 如果需要,使用ISmartArt.Layout属性过滤特定布局的 SmartArt 形状。

以下代码示例展示了如何访问 PowerPoint 演示文稿中的 SmartArt 形状。

// Load the presentation
using (Presentation pres = new Presentation("AccessSmartArtShape.pptx"))
{// Iterate through every shape inside desired slideforeach (IShape shape in pres.Slides[0].Shapes){// Check if shape is of SmartArt typeif (shape is ISmartArt){// Typecast shape to SmartArtISmartArt smart = (ISmartArt)shape;System.Console.WriteLine("Shape Name:" + smart.Name);// Checking SmartArt Layout//if (smart.Layout == SmartArtLayoutType.BasicBlockList)//{//   Console.WriteLine("Do some thing here....");//}}}
}

使用 C# 更改 SmartArt 形状的样式

访问 SmartArt 形状后,您也可以更改其样式。以下步骤演示了如何使用 C# 更改 PowerPoint 演示文稿中 SmartArt 形状的样式。

  • 使用Presentation类创建一个新的演示文稿或加载一个现有的演示文稿。
  • 将所需幻灯片的引用获取到ISlide对象中。
  • 使用ISlide.Shapes集合遍历幻灯片中的形状。
  • 如果形状是ISmartArt类型,则将其引用放入ISmartArt对象中。
  • 更改所需的样式,即ISmartArt.ColorStyle、ISmartArt.QuickStyle等。
  • 使用Presentation.Save(String, SaveFormat)方法保存更新的演示文稿。

以下代码示例展示了如何更改 PowerPoint 演示文稿中 SmartArt 形状的样式。

// Load presentation
using (Presentation presentation = new Presentation("AccessSmartArtShape.pptx"))
{// Traverse through every shape inside first slideforeach (IShape shape in presentation.Slides[0].Shapes){// Check if shape is of SmartArt typeif (shape is ISmartArt){// Typecast shape to SmartArtISmartArt smart = (ISmartArt)shape;// Check SmartArt styleif (smart.QuickStyle == SmartArtQuickStyleType.SimpleFill){// Change SmartArt Stylesmart.QuickStyle = SmartArtQuickStyleType.Cartoon;}// Check SmartArt color typeif (smart.ColorStyle == SmartArtColorType.ColoredFillAccent1){// Change SmartArt color typesmart.ColorStyle = SmartArtColorType.ColorfulAccentColors;}}}// Save Presentationpresentation.Save("ChangeSmartArtStyle_out.pptx", SaveFormat.Pptx);
}

PPT处理控件Aspose.Slides功能演示:使用 C# 在 PowerPoint 演示文稿中创建 SmartArt相关推荐

  1. 【更新】PPT管理控件Aspose.Slides V17.5发布 | 附下载

    2019独角兽企业重金招聘Python工程师标准>>> Aspose.Slides for .NET 17.5 功能和改进 核心 概述 类别 SLIDESNET-38576 生成的S ...

  2. PPT开发控件 Aspose.Slides for Java 授权须知

    Aspose.Slides是一款用于生成,管理和转换PowerPoint幻灯片的本机API,可以使用多种格式,而不需要Microsoft PowerPoint.并且可在任何平台上操作PowerPoin ...

  3. PPT处理控件Aspose功能演示:使用C#从PowerPoint文件中提取文本

    有时需要从PowerPoint幻灯片中提取文本以执行文本分析.另一方面,可能需要提取文本并将其保存在文件或数据库中以进行进一步处理.因此,本文介绍了如何使用C#从PowerPoint演示文稿中提取文本 ...

  4. Word处理控件Aspose.Words功能演示:使用 C++ 保护或取消保护 Word 文档

    Aspose.Words 是一种高级Word文档处理API,用于执行各种文档管理和操作任务.API支持生成,修改,转换,呈现和打印文档,而无需在跨平台应用程序中直接使用Microsoft Word. ...

  5. Word处理控件Aspose.Words功能演示:在 Python 中自动合并 MS Word 邮件

    MS Word 邮件合并是一项流行的功能,允许您创建信件.发票.信封.报告等.使用邮件合并,您可以创建模板并使用数据填充它.因此,将为数据源中的每个条目生成一个文档.为了自动化此功能,本文介绍了如何使 ...

  6. Word处理控件Aspose.Words功能演示:使用 C# 在 Word 文档中创建和修改 VBA 宏

    Aspose.Words 是一种高级Word文档处理API,用于执行各种文档管理和操作任务.API支持生成,修改,转换,呈现和打印文档,而无需在跨平台应用程序中直接使用Microsoft Word.此 ...

  7. PPT文档管理控件Aspose.Slides v19.5上线发布!开始评估PDF转换的时间花费!

    Aspose.Slides for .NET一种独特的表示处理API,使应用程序能够读取,编写,修改和转换PowerPoint演示文稿.支持大多数Microsoft PowerPoint格式进行处理和 ...

  8. Word处理控件Aspose.Words功能演示:使用Java合并MS Word文档

    在各种情况下,可能需要合并多个MS Word文档,例如减少文档数量,在单个文件中保留相似种类的内容(即发票)等.许多在线应用程序使您可以合并两个或多个MS Word文档但是,您可能需要在自己的Web或 ...

  9. Word处理控件Aspose.Words功能演示:在 Java 中将 HTML 文件转换为 Word 文档

    在各种情况下,您可能需要将 HTML 内容转换为 Word 文档.例如,用于从所见即所得 HTML 编辑器生成文档或将网页转换为 DOCX 或 DOC 格式.为了以编程方式执行此转换,本文介绍了如何将 ...

最新文章

  1. python分隔符的使用,在python中使用分隔符“\”拆分字符串
  2. windows10如何下载和安装latex
  3. 计划学习研究模板引擎。学习stringtemplate先
  4. 轮胎扎了“钉子”该怎么办?到底要不要拔掉?
  5. 博士面试被拒,只因第一学历非985、211...
  6. 最大子数组下标java,【算法】最大子数组
  7. Java基础学习总结(134)——JDK 11 是否值得更新的思考
  8. zookeeper安装与测试
  9. linux pclint配置_静态分析工具PC-lint Plus使用教程:安装与配置
  10. C++对象在内存中的布局
  11. Linux Rsync服务详解(一)——Rsync基本命令与使用
  12. 自定义tooltip
  13. 在Winform开发框架中实现对数据库的加密支持
  14. linux命令行工具大全,七款极为实用的Linux命令行工具
  15. 产品学习:淘宝网的架构演化案例分析
  16. 万能乘法速算法大全_玩转扑克牌亲子游戏大全收藏 孩子爱上数学 快速提升计算能力...
  17. 提取Blast2go blast结果中的一部分
  18. 曙光服务器bios开启vt虚拟化,VT开启教程 BIOS开启VT方法
  19. netty源码阅读之编码之flush刷新buffer队列
  20. iptables的三表五链

热门文章

  1. 联想拯救者y9000k和y9000p的区别
  2. ApacheCN 翻译、校对、笔记整理活动(有偿)进度公告 2022.7
  3. java io broken pipe解决_报错!!java.io.IOException: 断开的管道 中文报错?Broken pipe?这次发生的报错不影响业务,已有解决方案...
  4. Excel一个图中设置两个纵坐标
  5. 计算机学院王春枝教授实验室,全国高等学校计算机科学与技术教学成果获奖证书.doc...
  6. 计算机系统文件夹打不开,电脑系统的文件夹打不开可以试下这两个办法
  7. 计划驱动的软件过程:waterfall model(瀑布模型,或称之为SDLC模型)
  8. 关于去除CSDN上图片的默认水印
  9. 20189221 2018-2019-2 《密码与安全新技术专题》第六周作业
  10. 前端重要信息手机号、邮箱、身份证号进行脱敏处理