工具/材料
IntelliJ IDEA
JDK 1.8.0
Spire.Presentation.jar 3.9.0
操作方法
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项目文件夹下,文件路径可以自行定义。
声明:该文观点仅代表作者本人,天晴资讯网系信息发布平台,仅提供信息存储空间服务。