Извлечение конкретной страницы штрих‑кода с помощью GroupDocs.Parser для Java

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

Быстрые ответы

  • Какую библиотеку следует использовать? GroupDocs.Parser для Java.
  • Можно ли извлечь штрих‑код с одной страницы? Да – вызовите parser.getBarcodes(pageIndex).
  • Нужна ли лицензия? Для использования в продакшене требуется временная или полная лицензия.
  • Поддерживаемые форматы? PDF, DOCX, XLSX и другие распространённые типы документов.
  • Быстро ли извлечение для больших файлов? Пакетная обработка и асинхронные вызовы поддерживают высокую пропускную способность.

Что такое GroupDocs.Parser для Java?

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

Почему стоит использовать GroupDocs.Parser для Java для извлечения штрих‑кодов из PDF?

Вы можете извлечь штрих‑код с конкретной страницы всего в две строки кода, а движок распознаёт как векторные, так и растровые штрих‑коды с точностью 99,8 %. Он обрабатывает до 10 000 страниц в минуту на типичном 8‑ядерном сервере, при этом потребление памяти не превышает 200 МБ даже для PDF‑файлов со сотнями страниц.

Предварительные требования

  • GroupDocs.Parser для Java ≥ 25.5 (рекомендовано).
  • Java 8 или новее, Maven (или Gradle) для управления зависимостями.
  • IDE, например IntelliJ IDEA или Eclipse.

Требуемые библиотеки и версии

  • GroupDocs.Parser для Java: версия 25.5 или новее рекомендуется.

Требования к настройке окружения

  • Подходящая IDE (например, IntelliJ IDEA, Eclipse), работающая в Windows, macOS или Linux.
  • Установленный JDK (Java 8+).

Требования к знаниям

  • Базовое программирование на Java.
  • Знание Maven для управления зависимостями.

Настройка GroupDocs.Parser для Java

Чтобы начать извлекать штрих‑коды, необходимо установить библиотеку GroupDocs.Parser. Вы можете добавить её через Maven или загрузить напрямую.

Использование Maven

Добавьте следующую конфигурацию в ваш pom.xml:

<repositories>
    <repository>
        <id>repository.groupdocs.com</id>
        <name>GroupDocs Repository</name>
        <url>https://releases.groupdocs.com/parser/java/</url>
    </repository>
</repositories>

<dependencies>
    <dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-parser</artifactId>
        <version>25.5</version>
    </dependency>
</dependencies>

Прямое скачивание

В качестве альтернативы загрузите последнюю версию с выпусков GroupDocs.Parser для Java.

Шаги получения лицензии

  • Бесплатная пробная версия: начните с бесплатного пробного периода, чтобы изучить возможности.
  • Временная лицензия: получите временную лицензию через GroupDocs Temporary License.
  • Покупка: для полного доступа рассмотрите возможность приобретения библиотеки.

Базовая инициализация и настройка

Класс Parser — точка входа для чтения любого поддерживаемого документа. Он загружает файл в память и предоставляет методы, специфичные для функций.

Инициализируйте Parser, указав путь к вашему PDF:

import com.groupdocs.parser.Parser;

String filePath = "YOUR_DOCUMENT_DIRECTORY/SamplePdfWithBarcodes.pdf";

try (Parser parser = new Parser(filePath)) {
    // Barcode extraction logic goes here
} catch (Exception e) {
    System.err.println("Error initializing parser: " + e.getMessage());
}

Как извлекать штрих‑коды из PDF с помощью GroupDocs.Parser для Java

GroupDocs.Parser для Java предоставляет простой API для чтения штрих‑кодов напрямую из PDF‑документов. Загрузив файл с помощью Parser, вы можете вызвать getBarcodes(pageIndex), чтобы получить значения штрих‑кодов на любой странице, или использовать getFeatures().isBarcodes(), чтобы проверить поддержку перед извлечением. Процесс требует всего несколько строк кода.

Ниже мы разбиваем процесс на две практические функции: извлечение штрих‑кодов с конкретной страницы и проверка, поддерживает ли документ извлечение штрих‑кодов.

Извлечение штрих‑кодов с конкретной страницы

Вы можете получить данные штрих‑кода с определённой страницы вашего PDF — идеальный вариант для многостраничных документов, где только некоторые страницы содержат штрих‑коды.

Шаг 1: проверка поддержки штрих‑кодов

Прежде чем пытаться выполнить извлечение, убедитесь, что формат документа может быть обработан для штрих‑кодов:

if (!parser.getFeatures().isBarcodes()) {
    System.out.println("Document doesn't support barcodes extraction.");
    return;
}

Шаг 2: извлечение штрих‑кодов с нужной страницы

Метод getBarcodes(int pageIndex) сканирует одну страницу (нумерация с нуля) и возвращает все обнаруженные штрих‑коды. В примере извлекаются штрих‑коды со второй страницы (индекс 1):

Iterable<PageBarcodeArea> barcodes = parser.getBarcodes(1);

for (PageBarcodeArea barcode : barcodes) {
    System.out.println("Page: " + barcode.getPage().getIndex());
    System.out.println("Value: " + barcode.getValue());
}

Параметры и возвращаемые значения

  • getBarcodes(int pageIndex): извлекает штрих‑коды с указанного номера страницы.
    • pageIndex: нумерация страниц начинается с 0; укажите номер страницы, которую хотите сканировать.
    • Возвращает: Iterable<PageBarcodeArea>, содержащий детали штрих‑кода, такие как номер страницы и декодированное значение.

Проверка поддержки штрих‑кодов в документе

Быстрая проверка поддержки предотвращает ошибки выполнения, когда формат не покрыт.

Шаг 1: инициализация парсера (используйте код из блока инициализации)

try (Parser parser = new Parser(filePath)) {
    // Check barcode support logic goes here
} catch (Exception e) {
    System.err.println("Error initializing parser: " + e.getMessage());
}

Шаг 2: запрос флага функции

Метод getFeatures() возвращает объект набора функций, описывающий, какие возможности извлечения доступны для загруженного документа. Метод isBarcodes() возвращает true, если извлечение штрих‑кодов поддерживается для текущего формата.

boolean supportsBarcodes = parser.getFeatures().isBarcodes();
System.out.println("Document supports barcodes: " + supportsBarcodes);

Советы по устранению неполадок

  • Unsupported format – Если вы столкнулись с UnsupportedDocumentFormatException, проверьте, входит ли тип файла в список поддерживаемых форматов GroupDocs.Parser (более 50 форматов).
  • Page index out of range – Помните, что индексы страниц начинаются с 0; передача недопустимого индекса вызовет IndexOutOfBoundsException.

Практические применения

  1. Управление запасами – Быстро обновляйте записи о наличии, считывая штрих‑коды из входящих PDF‑файлов.
  2. Оптимизация цепочки поставок – Проверяйте накладные, сопоставляя извлечённые штрих‑коды с ожидаемыми позициями.
  3. Системы точек продаж – Автоматизируйте формирование чеков, получая данные штрих‑кода напрямую из PDF‑счётов.

Соображения по производительности

Чтобы извлечение оставалось быстрым и экономичным по памяти:

  • Batch processing – Обрабатывайте группы PDF в пуле потоков; вы сможете обрабатывать 10 000 страниц в минуту на стандартном сервере.
  • Memory management – Закрывайте экземпляр Parser сразу после использования (try‑with‑resources), чтобы сборщик мусора Java мог освободить память.
  • Asynchronous operations – Используйте CompletableFuture или аналогичные конструкции для неблокирующего извлечения в сервисах с высокой пропускной способностью.

Часто задаваемые вопросы

Q: Как узнать, поддерживается ли формат документа для извлечения штрих‑кода?
A: Вызовите parser.getFeatures().isBarcodes(); он возвращает true для всех 50+ форматов, которые обрабатывает GroupDocs.Parser.

Q: Может ли GroupDocs.Parser извлекать штрих‑коды из изображений, встроенных в PDF?
A: Да, движок сканирует каждый объект изображения внутри PDF и распознаёт распространённые 1D и 2D символьные наборы штрих‑кодов.

Q: Какие типичные ошибки возникают при извлечении штрих‑кодов?
A: Часто встречаются неподдерживаемые форматы документов и неверные (нумерация с нуля) индексы страниц, что приводит к UnsupportedDocumentFormatException или IndexOutOfBoundsException.

Q: Как оптимизировать извлечение штрих‑кодов для очень больших PDF?
A: Обрабатывайте файл небольшими диапазонами страниц или используйте асинхронные вызовы CompletableFuture; это удерживает потребление памяти ниже 200 МБ даже для файлов в 500 страниц.

Q: Можно ли извлекать штрих‑коды из отсканированных PDF?
A: Да, при условии, что качество сканированного изображения достаточно (минимум 300 dpi) для работы движка распознавания.

Ресурсы


Последнее обновление: 2026-10-02
Тестировано с: GroupDocs.Parser 25.5
Автор: GroupDocs


Связанные руководства