Редактировать PDF-документы на JavaScript
Обзор
Aspose.Slides for Node.js via Java позволяет редактировать содержимое PDF, импортируя его страницы в виде слайдов, изменяя презентацию и экспортируя её обратно в PDF. Эта статья демонстрирует простую замену текста. Презентация остаётся в памяти, поэтому сохранение промежуточного файла PPTX необязательно.
Замена текста в PDF
Используйте addFromPdf для импорта страниц, replaceText для обновления текста и save для экспорта результата.
В следующем примере предполагается, что input.pdf содержит слово «Draft» как редактируемый текст после импорта. Оно заменяет это слово на «Final» и записывает edited.pdf. Очистка начального слайда перед импортом предотвращает появление лишней пустой страницы в результате. Поиск совпадает с целыми словами с учётом регистра; null означает, что обратный вызов результата не нужен.
const slides = require("aspose.slides.via.java");
const presentation = new slides.Presentation();
try {
presentation.getSlides().removeAt(0);
presentation.getSlides().addFromPdf("input.pdf");
const searchOptions = new slides.TextSearchOptions();
searchOptions.setWholeWordsOnly(true);
searchOptions.setCaseSensitive(true);
presentation.replaceText("Draft", "Final", searchOptions, null);
presentation.save("edited.pdf", slides.SaveFormat.Pdf);
} finally {
presentation.dispose();
}
Для получения дополнительных вариантов см. Search and Replace Text и Convert PowerPoint to PDF.
Note
Замена текста работает с импортированным текстом, а не с текстом внутри отсканированных изображений. Конверсия может повлиять на макет и форматирование, поэтому проверьте результат, особенно если заменяемый текст длиннее оригинала.FAQ
Нужно ли сохранять файл PPTX перед экспортом в PDF?
Нет. Вы можете редактировать и экспортировать одну и ту же презентацию в памяти. Сохраните копию PPTX только если вы также хотите продолжать редактировать её в PowerPoint; см. Save Presentations.
Почему некоторый текст может оставаться неизменным?
В примере ищется полное слово «Draft» с точным регистром. Текст, импортированный как изображение, или разбитый на отдельные текстовые фреймы, может не совпадать с поиском. Проверьте импортированное содержимое и скорректируйте поиск для вашего документа.