在 Python via Java 中编辑 PDF 文档

概述

Aspose.Slides for Python via Java 让您通过将 PDF 页面导入为幻灯片、修改演示文稿并将其导出回 PDF 来编辑 PDF 内容。本文展示了一个简单的文本替换示例。演示文稿保持在内存中,因此保存中间的 PPTX 文件是可选的。

在 PDF 中替换文本

使用 addFromPdf 导入页面,使用 replaceText 更新文本,使用 save 导出结果。

下面的示例假设 input.pdf 在导入后包含可编辑的单词 “Draft”。它将该单词替换为 “Final”,并写入 edited.pdf。在导入前清除初始幻灯片可防止输出中出现额外的空白页。搜索匹配整个单词且区分大小写;None 表示不需要结果回调。

import jpype
import asposeslides

if not jpype.isJVMStarted():
    jpype.startJVM()

from asposeslides.api import Presentation, SaveFormat, TextSearchOptions

presentation = Presentation()
try:
    presentation.getSlides().removeAt(0)

    presentation.getSlides().addFromPdf("input.pdf")

    search_options = TextSearchOptions()
    search_options.setWholeWordsOnly(True)
    search_options.setCaseSensitive(True)
    presentation.replaceText("Draft", "Final", search_options, None)

    presentation.save("edited.pdf", SaveFormat.Pdf)
finally:
    presentation.dispose()

欲了解更多选项,请参阅 Search and Replace Text 和 Convert PowerPoint to PDF。

常见问题

是否需要在导出 PDF 之前保存 PPTX 文件?

不需要。您可以在内存中编辑并导出同一演示文稿。只有在希望在 PowerPoint 中继续编辑时才保存 PPTX 副本;请参阅 Save Presentations。

为什么某些文本可能保持不变?

示例严格匹配整个单词 “Draft”,并区分大小写。以图像形式导入的文本或分散在多个独立文本框中的文本可能无法匹配搜索条件。请检查导入的内容并相应调整搜索策略,以适应您的文档。