Java 在 PowerPoint 中查找和替换文本

MS PowerPoint 提供了在演示文稿中查找和替换文本的有用功能。但是,您可能需要自动化来对一批文件执行此操作。因此,在本文中,您将学习如何使用 Java 以编程方式查找和替换 PowerPoint PPTX/PPT 中的文本。

用于在 PowerPoint 中查找和替换文本的 Java API

为了在 PPTX/PPT 演示文稿中查找和替换文本,我们将使用 Aspose.Slides for Java。它是一个强大的 API,用于在 Java 应用程序中创建、操作和转换 PowerPoint 演示文稿。您可以 下载 API 或使用以下 Maven 配置安装它。

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-slides</artifactId>
    <version>21.7</version>
    <classifier>jdk16</classifier>
</dependency>

使用 Java 在 PowerPoint PPTX 中查找和替换文本

以下是使用 Java 在 PPTX 演示文稿中查找和替换文本的步骤。

以下代码示例演示如何在 PowerPoint 演示文稿中查找和替换文本。

// 加载演示文稿
Presentation pres = new Presentation("mytextone.pptx");

String strToFind = "search string";
String strToReplaceWith = "replace string";

// 循环浏览每张幻灯片
for (ISlide slide : pres.getSlides()) {
	// 获取幻灯片中的所有文本框
	ITextFrame[] tf = SlideUtil.getAllTextBoxes(slide);

	for (int i = 0; i < tf.length; i++)

		for (IParagraph para : tf[i].getParagraphs())

			for (IPortion port : para.getPortions())

				// 查找要替换的文本
				if (port.getText().contains(strToFind)) {
					// 用新文本替换现有文本
					String str = port.getText();
					int idx = str.indexOf(strToFind);
					String strStartText = str.substring(0, idx);
					String strEndText = str.substring(idx + strToFind.length(),
							str.length() - 1 - (idx + strToFind.length() - 1));
					port.setText(strStartText + strToReplaceWith + strEndText);

				}
}

// 保存演示文稿
pres.save("myTextOneAspose.pptx", SaveFormat.Pptx);

获取免费 API 许可证

您可以通过请求 临时许可证 来使用 Aspose.Slides for Java,而不受评估限制。

结论

在本文中,您学习了如何使用 Java 以编程方式查找和替换 PowerPoint 演示文稿中的文本。您可以简单地将 API 和提供的代码示例集成到您的 Java 应用程序中。此外,您可以访问 文档 来探索 Aspose.Slides for Java 的其他功能。此外,您可以通过我们的 论坛 告知我们您的疑问。

也可以看看