Главное Авторские колонки Вакансии Образование
Выбор редакции:
230 0 В избр. Сохранено
Авторизуйтесь
Вход с паролем

Как разметить текст в PDF-документе на Java

В этой статье мы расскажем вам о процессе разметки текста в PDF-файлах с помощью Java и Spire.PDF for Java.
Мнение автора может не совпадать с мнением редакции

В современную цифровую эпоху PDF-файлы стали незаменимым инструментом для обмена и распространения документов. Независимо от того, являетесь ли вы разработчиком, желающим автоматизировать создание документов, или профессионалом, которому необходимо аннотировать и выделять текст, возможность разметки PDF-документов имеет решающее значение. В этой статье мы расскажем вам о процессе разметки текста в PDF-файлах с помощью Java и Spire.PDF for Java.

Библиотека Java для штамповки PDF-документов

Spire.PDF for Java — это профессиональная Java-библиотека для чтения, создания и работы с PDF-файлами в Java-приложениях.

Если вы создали проект Maven, вы можете легко импортировать jar в свое приложение с помощью следующих конфигураций. Для проектов, не использующих Maven, загрузите Spire.Pdf.jar и добавьте его в качестве зависимости в ваше приложение.


Разметка текста в PDF на Java

Spire.PDF for Java предлагает класс PdfTextMarkupAnnotation для создания аннотаций разметки в PDF. Ниже описаны шаги:

  • Создайте объект PdfDocument.
  • Загрузите существующий PDF-файл.
  • Доступ к определенной странице.
  • Поиск определенной строки текста в PDF.
  • Получите границы найденных фрагментов текста.
  • Создание 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 в Word в Java

Печать PDF-документов в Java

Слияние PDF-документов в Java

Создание PDF-документов в Java

0
В избр. Сохранено
Авторизуйтесь
Вход с паролем
Комментарии
Выбрать файл
Блог проекта
Расскажите историю о создании или развитии проекта, поиске команды, проблемах и решениях
Написать
Личный блог
Продвигайте свои услуги или личный бренд через интересные кейсы и статьи
Написать

Spark использует cookie-файлы. С их помощью мы улучшаем работу нашего сайта и ваше взаимодействие с ним.