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

Разобрать PDF-форму для извлечения значений в Java

API Java для анализа и извлечения значений из форм PDF

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

В следующих примерах я буду использовать упомянутый API, т.е. GroupDocs.Parser for Java, поэтому я рекомендую вам подготовить свою среду для реализации этой функции. Вы можете загрузить последнюю версию JAR-файла из раздела downloads или просто добавить следующие конфигурации в свои Java-приложения на основе Maven. Для получения подробной информации об API посетите Справочник по API.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
	<groupId>com.groupdocs</groupId>
	<artifactId>groupdocs-parser</artifactId>
	<version>20.8</version> 
</dependency>

Извлечь данные из поля формы PDF в Java

Следующие простые шаги о том, как извлечь значения поля из формы PDF.

  • Инициализируйте объект Parser целевой формой PDF.
  • Вызовите метод parseForm, чтобы получить все данные из формы PDF.
  • Просмотрите собранные данные, чтобы получить нужные значения полей.

В следующем коде показано, как анализировать документ PDF и получать значения из заполненных полей формы PDF в Java.

// Проанализируйте заполненную форму PDF, чтобы извлечь значения полей, используя Java API GroupDocs.Parser.
Parser parser = new Parser("filePath/PDFForm.pdf"); 
// Извлечь данные из формы PDF
DocumentData data = parser.parseForm();
// Перебор извлеченных данных PDF-формы
for (int i = 0; i < data.getCount(); i++) {
    System.out.print(data.get(i).getName() + ": ");
    PageTextArea area = (data.get(i).getPageArea() instanceof PageTextArea)
            ? (PageTextArea) data.get(i).getPageArea()
            : null;
    System.out.println(area == null ? "Not a template field" : area.getText());
}
COMPANY: GroupDocs
EMAIL: everything@groupdocs.com
COUNTRY: Australia

Вывод

Я надеюсь, что разработчики Java теперь знакомы с простым, точным и эффективным способом анализа документов PDF для извлечения текстовых значений из полей формы PDF. Если вам интересно узнать больше об основных и расширенных функциях API, вы можете изучить документацию.

В случае возникновения вопросов обращайтесь в службу поддержки @forum.

Смотрите также