SmartArt 图形通过将文字、图形从多种不同布局、组合来表现内容和观点的逻辑关系,能够快速、有效地传达设计者的意图和信息。这种图文表达的视觉表示形式常用于PPT,Word,Excel等办公文档中。本篇文章以在PPT中创建SmartArt图形为例来介绍通过Java程序来实现的具体方法。
工具:Free Spire.Presentation for Java(免费版)
Jar获取及导入:官网下载jar包,并解压将lib文件夹下的jar文件导入Java程序,或者通过maven仓库下载导入。
这里创建SmartArt形状时,可在默认创建的形状中添加内容,也可以自定义图形节点来添加内容。
import com.spire.presentation.*; import com.spire.presentation.diagrams.*; public class SmartArt { public static void main(String[] args) throws Exception{ //创建PPT文档,获取一张幻灯片(创建的空白PPT文档,默认包含一张幻灯片) Presentation ppt = new Presentation(); ISlide slide = ppt.getSlides().get(0); //创建SmartArt图形1 ISmartArt smartArt1 = slide.getShapes().appendSmartArt(50,50,200,200, SmartArtLayoutType.BASIC_CYCLE);//在幻灯片指定位置添加指定大小和布局类型的SmartArt图形 smartArt1.setColorStyle(SmartArtColorType.COLORFUL_ACCENT_COLORS_4_TO_5);//设置SmartArt图形颜色类型 smartArt1.setStyle(SmartArtStyleType.INTENCE_EFFECT);//设置SmartArt图形样式 ISmartArtNode smartArtNode1 = smartArt1.getNodes().get(0); smartArtNode1.getTextFrame().setText("设计");//获取默认节点,添加内容 smartArt1.getNodes().get(1).getTextFrame().setText("模仿"); smartArt1.getNodes().get(2).getTextFrame().setText("学习"); smartArt1.getNodes().get(3).getTextFrame().setText("实践"); smartArt1.getNodes().get(4).getTextFrame().setText("创新"); //创建SmartArt图形2,自定义节点内容 ISmartArt smartArt2 = slide.getShapes().appendSmartArt(400,200,200,200,SmartArtLayoutType.BASIC_RADIAL); smartArt2.setColorStyle(SmartArtColorType.DARK_2_OUTLINE); smartArt2.setStyle(SmartArtStyleType.MODERATE_EFFECT); //删除默认的节点(SmartArt中的图形) for (Object a : smartArt2.getNodes()) { smartArt2.getNodes().removeNode((ISmartArtNode) a); } //添加一个母节点 ISmartArtNode node2 = smartArt2.getNodes().addNode(); //在母节点下添加三个子节点 ISmartArtNode node2_1 = node2.getChildNodes().addNode(); ISmartArtNode node2_2 = node2.getChildNodes().addNode(); ISmartArtNode node2_3 = node2.getChildNodes().addNode(); //在节点上设置文字及文字大小 node2.getTextFrame().setText("设备"); node2.getTextFrame().getTextRange().setFontHeight(14f); node2_1.getTextFrame().setText("机械"); node2_1.getTextFrame().getTextRange().setFontHeight(12f); node2_2.getTextFrame().setText("电气"); node2_2.getTextFrame().getTextRange().setFontHeight(12f); node2_3.getTextFrame().setText("自动化"); node2_3.getTextFrame().getTextRange().setFontHeight(12f); // 保存文档 ppt.saveToFile("AddSmartArt.pptx",FileFormat.PPTX_2013); ppt.dispose(); } }
Java 编辑PPT中的SmartArt 图形,可参考这篇文章。
相关推荐
5. **SmartArt图形**:Two Content Layout with SmartArt(双内容布局带SmartArt图形)利用图形化的方式呈现信息流程或目标实现步骤,如"Goal, Step 1, Step 2, Step 3",这在规划、项目管理或战略介绍中非常有用,...
处理SmartArt图形以增强信息可视化。 4. **动画和过渡**:添加和控制幻灯片的动画效果和过渡效果,实现动态展示。 5. **图像处理**:裁剪、旋转、调整图像质量,以及应用滤镜和效果。 6. **公式支持**:支持...
4. 图表和SmartArt:创建各种类型的图表(柱状图、饼图、折线图等)以及Microsoft SmartArt图形,用于数据可视化。 5. 图像和多媒体:嵌入和操作图片,支持多种格式,如JPEG、PNG、GIF等;可以添加音频和视频到幻灯...
4. **图形和图表**:支持在幻灯片中插入和编辑文本框、形状、图像、图表、SmartArt图形等多种对象。 5. **动画和过渡效果**:可以添加和控制幻灯片间的动画效果和过渡方式,增强演示文稿的视觉吸引力。 6. **公式...
2. **内容编辑**:可以添加文本框、形状、图片、图表、SmartArt图形、超链接等元素,并进行格式设置。此外,还支持自定义动画和过渡效果。 3. **格式转换**:Aspose.Slides可以将PowerPoint文件转换为其他格式,如...
- **poi-scratchpad-3.7.jar**:这个库包含了POI的一些实验性或者不完全支持的功能,比如处理PDF、SmartArt图形、Visio文件等。在正式环境中使用时需谨慎,因为这些功能可能不够稳定或缺少文档支持。 - **poi-...
6. PowerPoint知识:文档中提到的“SmartArt”是PowerPoint中的一个功能,用于创建图形化信息,比如流程图、列表等。此外还提到了幻灯片展示相关的快捷键操作,例如“Ctrl+A”用于全选,以及“Ctrl+Shift”组合键的...