Java 替换PPT中的指定文本内容

4859次浏览推荐于2021.02.26

    操作方法

    • 01

      在Java程序中导入Spire.Presentation.jar文件,如下图:

      • 02

        导入jar到程序后,编辑代码,如下: import com.spire.presentation.*; import java.util.HashMap; import java.util.Map; public class FindAndReplaceText { public static void main(String[] args) throws Exception{ //加载PowerPoint文档 Presentation ppt = new Presentation(); ppt.loadFromFile("input.pptx"); //获取张幻灯片 ISlide slide = ppt.getSlides().get(2); //创建Map对象 Map map = new HashMap(); //将需要被替换和用于替换的文本以键值的形式添加到Map map.put("服务","Service"); map.put("团结","Unity"); //替换幻灯片中的文本 replaceText(slide,map); //保存文档 ppt.saveToFile("ReplaceText.pptx", FileFormat.PPTX_2013); } /** * 替换指定幻灯片中的文本 * slide指定幻灯片 * map以键值的形式存储需要被替换和用于替换的文本 */ public static void replaceText(ISlide slide, Map map) { for (Object shape : slide.getShapes()) { if (shape instanceof IAutoShape) { for (Object paragraph : ((IAutoShape) shape).getTextFrame().getParagraphs()) { ParagraphEx paragraphEx = (ParagraphEx)paragraph; for (Object key : map.keySet()) { if (paragraphEx.getText().contains(key.toString())) { paragraphEx.setText(paragraphEx.getText().replace(key.toString(), map.get(key).toString())); } } } } } } }

        • 03

          完成代码后,执行程序,生成文档。在结果文档中可查看文本替换结果,如下图所示:

          • End

          特别提示

          代码中的PPT源文档及生成的结果文档均保存在IDEA项目文件夹下,文件路径可以自行定义。

          免责声明:

          本页搜狗指南内容仅代表作者本人意见,若因此产生任何纠纷由作者本人负责,概与搜狗公司无关。本页搜狗指南内容仅供参考,请您根据自身实际情况谨慎操作。尤其涉及您或第三方利益等事项,请咨询专业人士处理。

          0点赞无帮助无帮助
          码字人生~