Модификация содержимого PDF программно может быть необходима в ситуациях, когда необходимо заменить чувствительную или устаревшую информацию перед распространением. Одной из самых полезных функций обработки PDF является возможность поиска определенной фразы или паттерна и замены её на альтернативное содержимое. В этом подробном руководстве мы покажем, как вы можете находить и заменять текст в PDF-файлах с использованием Java. Основное внимание будет уделено использованию мощного Conholdate.Total для Java SDK, который позволяет разработчикам выполнять надежные задачи манипуляции документами, включая редактирование и замену всего за несколько строк кода.
Мы рассмотрим два важных сценария. Первый объяснит, как найти точное слово или фразу в PDF и заменить их. Второй рассмотрит использование регулярных выражений для сопоставления и замены переменных шаблонов, таких как номера телефонов, номера счетов или другие пользовательские форматы данных.
Почему искать и заменять текст в PDF-файлах?
Обеспечьте конфиденциальность и соблюдение нормативных требований: легко удаляйте личные или конфиденциальные данные перед публикацией или обменом PDF-файлами.
Обновление документов эффективно: автоматически заменяйте устаревшие термины или содержимое в больших партиях файлов.
Гибкие параметры текстового поиска: используйте как точное совпадение фраз, так и регулярные выражения для всестороннего редактирования.
Сохранить целостность документа: Сохранить оригинальное расположение и форматирование, заменяя содержимое.
Поддержка автоматизации: интеграция в рабочие процессы Java для пакетной обработки и задач по автоматизации документов.
Найдите и замените текст в PDF с использованием Java - Установка SDK
Чтобы редактировать PDF документы, вам необходимо настроить Conholdate.Total for Java SDK в вашей среде. Вы можете загрузить файл DLL из раздела Новые релизы или использовать команду установки NuGet ниже в Visual Studio:
Install-Package Conholdate.Total
Найдите и замените текст в PDF с помощью Java
When dealing with PDF documents that contain sensitive information like names, contact details, or organization identifiers, there is often a need to redact or replace these words before sharing the file. Conholdate.Total for Java SDK provides a straightforward way to accomplish this. The following example demonstrates how to search for an exact match of a word or phrase and substitute it with a placeholder or alternative text.
final Redactor redactor = new Redactor("path/document.docx");
redactor.apply(new ExactPhraseRedaction("John Doe", new ReplacementOptions("[censored]")));
// If you want to save the redacted file at different location with diferent name.
FileOutputStream stream = new FileOutputStream("path/exactPhrase.docx");
RasterizationOptions rasterOptions = new RasterizationOptions();
rasterOptions.setEnabled(false);
redactor.save(stream, rasterOptions);
В этом фрагменте SDK сканирует PDF файл на наличие фразы "John Doe" и заменяет каждое вхождение на термин "[censored]". Эта операция особенно полезна для автоматизации удаления персонально идентифицируемой информации из документов. Опция AddSuffix гарантирует, что оригинальный файл останется нетронутым, сохраняя отредактированную версию как новый файл, в то время как флаг RasterizeToPDF сохраняет результат в текстовом формате PDF, а не конвертирует его в изображение.
Найдите и замените текст в PDF с помощью регулярных выражений в Java
Иногда текст, который необходимо заменить в PDF, не следует фиксированному формату. Например, такие шаблоны, как номера счетов, почтовые коды или номера удостоверений личности, могут варьироваться от документа к документу. В таких ситуациях регулярные выражения предлагают динамическое решение. Conholdate.Total для Java SDK позволяет разработчикам определять регулярные шаблоны для обнаружения и замены сложных текстовых структур в PDF.
// Find text using regular expression and replace it with some other text using Java
final Redactor redactor = new Redactor("path/document.docx");
redactor.apply(new RegexRedaction("\\d{2}\\s*\\d{2}[^\\d]*\\d{6}", new ReplacementOptions("[censored]")));
redactor.save();
Регулярное выражение, используемое в этом коде, соответствует шаблону, часто используемому для форматированных кодов, таких как банковские ссылки или идентификаторы транзакций. Любой текст, соответствующий этому шаблону, автоматически обнаруживается и заменяется на предопределенную метку, такую как "[censored]". Этот уровень гибкости обеспечивает защиту конфиденциальной информации, даже когда вы не знаете ее точного содержания заранее.
Заключение
Нахождение и замена текста в PDF-документах с использованием Java никогда не было проще, благодаря возможностям, которые предлагает Conholdate.Total для Java. Независимо от того, заменяете ли вы конкретное слово или ищете переменные паттерны с помощью регулярных выражений, этот SDK обеспечивает возможность точно и контролируемо манипулировать содержимым вашего PDF. Возможность редактирования конфиденциальной информации, автоматизации обновлений и сохранения форматирования документа делает этот инструмент мощным для разработчиков в различных отраслях. Интегрируйте его в свои Java-проекты сегодня и оптимизируйте ваши рабочие процессы обработки документов с уверенностью.