Как разметить текст в PDF-документе на Java
В современную цифровую эпоху PDF-файлы стали незаменимым инструментом для обмена и распространения документов. Независимо от того, являетесь ли вы разработчиком, желающим автоматизировать создание документов, или профессионалом, которому необходимо аннотировать и выделять текст, возможность разметки PDF-документов имеет решающее значение. В этой статье мы расскажем вам о процессе разметки текста в PDF-файлах с помощью Java и Spire.PDF for Java.
Библиотека Java для штамповки PDF-документов
Spire.PDF for Java — это профессиональная Java-библиотека для чтения, создания и работы с PDF-файлами в Java-приложениях.
Если вы создали проект
Maven, вы можете легко импортировать jar в свое приложение с помощью следующих
конфигураций. Для проектов, не использующих Maven, загрузите Spire.Pdf.jar и добавьте его в качестве
зависимости в ваше приложение.
Spire.PDF
for Java предлагает класс PdfTextMarkupAnnotation для создания аннотаций
разметки в PDF. Ниже описаны шаги: Следующий код
демонстрирует, как автоматизировать процесс добавления аннотаций к
PDF-документу. Он загружает существующий PDF-документ, ищет определенный текст,
создает аннотации на основе этого текста и сохраняет обновленный документ. import com.spire.pdf.PdfDocument; import com.spire.pdf.PdfPageBase; import com.spire.pdf.annotations.PdfTextMarkupAnnotation; import com.spire.pdf.graphics.PdfRGBColor; import com.spire.pdf.texts.PdfTextFinder; import com.spire.pdf.texts.PdfTextFragment; import com.spire.pdf.texts.TextFindParameter; import java.awt.*; import java.awt.geom.Rectangle2D; import java.util.EnumSet; import java.util.List; public class AddMarkupAnnotation { public static void main(String[] args) { // Создание объекта PdfDocument PdfDocument doc = new PdfDocument(); // Загрузка PDF файла doc.loadFromFile("C:\\Users\\Administrator\\Desktop\\sample.pdf"); // Получение конкретной страницы PdfPageBase page = doc.getPages().get(0); // Создание объекта PdfTextFinder на основе страницы PdfTextFinder finder = new PdfTextFinder(page); // Установка параметров поиска EnumSet parameterSet = EnumSet.of(TextFindParameter.IgnoreCase); finder.getOptions().setTextFindParameter(parameterSet); // Поиск экземпляров указанного текста List fragments = finder.find("Но в любом случае список функций и опций будет постепенно " + «увеличиваться, развитие прошивки не останавливается, и приоритеты расписаны на год вперед.»); // Получение первого экземпляра PdfTextFragment textFragment = fragments.get(0); // Указание текста аннотации String text = «Это аннотация к разметке.»; // Итерация по границам текста for (int i = 0; i < textFragment.getBounds().length; i++) { // Получение конкретной границы Rectangle2D rect = textFragment.getBounds()[i]; // Создание текстовой аннотации разметки PdfTextMarkupAnnotation annotation = new PdfTextMarkupAnnotation(rect); // Установка текста аннотации annotation.setText(text); // Установка автора annotation.setAuthor("Administrator"); // Установка цвета разметки annotation.setTextMarkupColor(new PdfRGBColor(Color.green)); // Добавление аннотации в коллекцию аннотаций page.getAnnotations().add(annotation); } // Сохранение результата в файл doc.saveToFile("MarkupText.pdf"); // Освобождение ресурсов doc.dispose(); } } В этой статье вы узнали, как разметить текст в PDF с помощью
Spire.PDF for Java. Будучи продвинутой библиотекой, она позволяет разработчикам
выполнять широкий спектр операций с PDF-документами, таких как:
Разметка текста в PDF на Java

Выводы