Редактирование PDF документов в Python

Обзор

Aspose.Slides for Python via .NET позволяет редактировать содержимое PDF, импортируя его страницы как слайды, изменяя презентацию и экспортируя её обратно в PDF. В этой статье показана простая замена текста. Презентация остаётся в памяти, поэтому сохранение промежуточного файла PPTX необязательно.

Замена текста в PDF

Используйте add_from_pdf для импорта страниц, replace_text для обновления текста и save для экспорта результата.

В следующем примере ожидается, что input.pdf содержит слово «Draft» как редактируемый текст после импорта. Оно заменяется на «Final», а результат записывается в edited.pdf. Очистка начального слайда перед импортом предотвращает появление лишней пустой страницы в итоговом файле. Поиск осуществляется по полным словам с учётом регистра; None означает, что обратный вызов результата не требуется.

import aspose.slides as slides

with slides.Presentation() as presentation:
    presentation.slides.remove_at(0)

    presentation.slides.add_from_pdf("input.pdf")

    search_options = slides.TextSearchOptions()
    search_options.whole_words_only = True
    search_options.case_sensitive = True
    presentation.replace_text("Draft", "Final", search_options, None)

    presentation.save("edited.pdf", slides.export.SaveFormat.PDF)

Для получения дополнительных вариантов см. Поиск и замена текста и Конвертация PowerPoint в PDF.

Часто задаваемые вопросы

Нужно ли сохранять файл PPTX перед экспортом в PDF?

Нет. Вы можете редактировать и экспортировать одну и ту же презентацию в памяти. Сохраняйте копию PPTX только если планируете продолжать её редактировать в PowerPoint; см. Сохранить презентации.

Почему часть текста остаётся неизменной?

В примере осуществляется поиск полного слова «Draft» с точным совпадением регистра. Текст, импортированный как изображение, или разбитый на отдельные текстовые фреймы, может не соответствовать поиску. Проверьте импортированное содержимое и при необходимости скорректируйте поиск для вашего документа.