Читайте штрих-код із зображення за допомогою Java

Штрих-коди відіграють важливу роль у точному відстеженні запасів і доставці продуктів від виробництва до точки продажу. У деяких випадках нам може знадобитися зчитувати штрих-коди із зображень програмним шляхом. Ми можемо легко виявляти, розпізнавати та читати різні типи штрих-кодів і QR-кодів у програмах Java. Це допомагає розробляти програми для зчитування штрих-кодів або сканери. У цій статті ми навчимося читати штрих-код із зображення за допомогою Java.

У цій статті будуть розглянуті такі теми:

Що таке штрих-код

Штрих-код — це машинозчитуваний код, який представляє закодовані дані у вигляді чисел і шаблону паралельних ліній. На зображенні штрих-коду показано ряд паралельних чорних і білих смуг різної ширини, інтервалу та розміру. Зчитувачі штрих-кодів або сканери сканують зображення штрих-кодів і декодують інформацію.

Java API для читання штрих-коду із зображення

Щоб зчитувати штрих-коди із зображень у програмах Java, ми будемо використовувати Aspose.BarCode for Java. Це багатофункціональний API, який дозволяє генерувати, сканувати та читати широкий спектр символів штрих-кодів. Клас BarCodeReader API дозволяє зчитувати штрих-коди. Метод readBarCodes() цього класу повертає масив розпізнаних штрих-кодів. API дозволяє зчитувати штрих-коди вказаного DecodeType. Клас BarCodeResult API зберігає розпізнані дані штрих-коду, такі як тип штрих-коду, текст коду, регіон та інші параметри.

Будь ласка, завантажте JAR API або додайте наступну конфігурацію pom.xml у програму Java на основі Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-barcode</artifactId>
    <version>22.5</version>
</dependency>

Читання штрих-коду із зображення в Java

Ми можемо зчитувати штрих-коди із зображення, виконавши наведені нижче дії.

  • По-перше, завантажте зображення за допомогою класу BarCodeReader.
  • Отримайте результати розпізнавання в об’єкті класу BarCodeResult за допомогою методу readBarCodes().
  • Нарешті, перегляньте результати та покажіть тип і текст штрих-коду.

У наступному прикладі коду показано, як зчитувати штрих-код із зображення за допомогою Java.

// Цей приклад коду демонструє, як зчитувати штрих-код із зображення.
// Шлях до каталогу зображень
String dataDir = "C:\\Files\\BarCode\\";

// Ініціалізувати зчитувач штрих-кодів
BarCodeReader reader = new BarCodeReader(dataDir + "CodeText.jpg");

// Прочитати штрих-код і показати результати
for (BarCodeResult result : reader.readBarCodes()) {
  System.out.println("CodeText: " + result.getCodeText());
  System.out.println("Symbology type: " + result.getCodeType());
}
Зчитування штрих-коду із зображення.

Зчитування штрих-коду із зображення в Java.

Розпізнавання штрих-коду певного типу в Java

Ми можемо прочитати штрих-код певного типу із зображення, виконавши наведені нижче дії.

  • По-перше, прочитайте дані буфера файлу зображення за допомогою методу ImageIO.read().
  • Далі створіть екземпляр класу BarCodeReader із буферизованим зображенням і типом декодування.
  • Потім установіть тип декодування штрих-коду, щоб зчитувати штрих-код певного типу, наприклад CODE39STANDARD.
  • Після цього отримати результати розпізнавання в об’єкті класу BarCodeResult за допомогою методу readBarCodes().
  • Нарешті, перегляньте результати та покажіть тип і текст штрих-коду.

У наведеному нижче прикладі коду показано, як зчитувати штрих-код певного типу із зображення за допомогою Java.

// Цей приклад коду демонструє, як читати штрих-код певного типу декодування із зображення.
// Шлях до каталогу зображень
String dataDir = "C:\\Files\\BarCode\\";

// Отримати буферизоване зображення
BufferedImage img = ImageIO.read(new File(dataDir + "CODE_39_STANDARD.jpg"));

// Ініціалізувати зчитувач штрих-кодів
BarCodeReader reader = new BarCodeReader(img, DecodeType.CODE_39_STANDARD);

// Прочитайте штрих-код типу Code39Extended
for (BarCodeResult result : reader.readBarCodes()) {
  System.out.println("CodeText: " + result.getCodeText());
  System.out.println("Symbology type: " + result.getCodeType());
}
Розпізнавання штрих-коду певного типу.

Розпізнавати штрих-код певного типу в Java.

Читайте кілька штрих-кодів із зображення в Java

Ми також можемо зчитувати всі доступні штрих-коди із зображення, виконавши наведені нижче дії.

  • По-перше, завантажте зображення за допомогою класу BarCodeReader.
  • Далі встановіть тип декодування штрих-коду як ALLSUPPORTEDTYPES.
  • Після цього отримати результати розпізнавання в об’єкті класу BarCodeResult за допомогою методу readBarCodes().
  • Нарешті, перегляньте результати та покажіть тип і текст штрих-коду.

У наведеному нижче прикладі коду показано, як читати кілька штрих-кодів із зображення за допомогою Java.

// Цей приклад коду демонструє, як читати штрих-код із кількох штрих-кодів із зображення.
// Шлях до каталогу зображень
String dataDir = "C:\\Files\\BarCode\\";

// Ініціалізувати зчитувач штрих-кодів
BarCodeReader reader = new BarCodeReader(dataDir + "MultipleBarcodes.png", DecodeType.ALL_SUPPORTED_TYPES);

// Зчитування всіх типів штрих-кодів, доступних на вхідному зображенні
for (BarCodeResult result : reader.readBarCodes()) {
  System.out.println("CodeText: " + result.getCodeText());
  System.out.println("Symbology type: " + result.getCodeType());
  System.out.println("-------------------------");
}
Зчитування кількох штрих-кодів із зображення.

Зчитування кількох штрих-кодів із зображення.

Отримайте координати X і Y штрих-коду за допомогою Java

Ми можемо прочитати координати X і Y виявленого штрих-коду із зображення, виконавши наведені нижче дії.

  • По-перше, завантажте зображення за допомогою класу BarCodeReader.
  • Потім отримайте результати розпізнавання в об’єкті класу BarCodeResult за допомогою методу readBarCodes().
  • Потім перегляньте результати та перевірте, чи getRegion() не має значення null.
  • Після цього отримайте масив Points, що обмежує область штрих-коду, за допомогою getPoints().
  • Нарешті, покажіть точки X і Y штрих-коду.

У наведеному нижче прикладі коду показано, як за допомогою Java отримати точки координати X і Y штрих-коду із зображення.

// Цей приклад коду демонструє, як зчитувати точку зони X і Y штрих-кодів із зображення.
// Шлях до каталогу зображень
String dataDir = "C:\\Files\\BarCode\\";

// Ініціалізувати зчитувач штрих-кодів
BarCodeReader reader = new BarCodeReader(dataDir + "Code39Std.png", DecodeType.ALL_SUPPORTED_TYPES);

// Прочитайте штрих-код
for (BarCodeResult result : reader.readBarCodes()) {
  if (result.getRegion() != null) {
    // Відображення координат x і y усіх виявлених штрих-кодів
    Point[] point = result.getRegion().getPoints();
    System.out.println("Top left coordinates: X = " + point[0].x + ", Y = " + point[0].y);
    System.out.println("Bottom left coordinates: X = " + point[1].x + ", Y = " + point[1].y);
    System.out.println("Bottom right coordinates: X = " + point[2].x + ", Y = " + point[2].y);
    System.out.println("Top right coordinates: X = " + point[3].x + ", Y = " + point[3].y);
  }
}
Отримайте координати X і Y штрих-коду.

Отримайте координати X і Y штрих-коду із зображення.

Зчитування штрих-коду з певної області зображення в Java

Ми можемо прочитати штрих-код із певного регіону чи ділянки зображення, виконавши наведені нижче дії.

  • По-перше, прочитайте дані буфера файлу зображення за допомогою методу ImageIO.read().
  • Далі створіть екземпляр класу BarCodeReader. Він приймає буферизоване зображення, прямокутну область і тип декодування як аргументи.
  • Після цього отримати результати розпізнавання в об’єкті класу BarCodeResult за допомогою методу readBarCodes().
  • Нарешті, перегляньте результати та покажіть тип і текст штрих-коду.

У наведеному нижче прикладі коду показано, як зчитувати штрих-код із певної області зображення за допомогою Java.

// Цей приклад коду демонструє, як зчитувати штрих-код із певної області зображення.
// Шлях до каталогу зображень
String dataDir = "C:\\Files\\BarCode\\";

// Отримати BufferedImage
java.awt.image.BufferedImage img = javax.imageio.ImageIO.read(new java.io.File(dataDir + "specificRegion.png"));

// Створіть екземпляр класу BarCodeReader
// і вкажіть область для пошуку штрих-коду
BarCodeReader reader = new BarCodeReader(img, new Rectangle(0, 0, 700, 100), DecodeType.ALL_SUPPORTED_TYPES);

// Зчитайте всі штрих-коди у наданій області
for (BarCodeResult result : reader.readBarCodes()) {
  System.out.println("CodeText: " + result.getCodeText());
  System.out.println("Symbology type: " + result.getCodeType());
}
Зчитування штрих-коду з певної області зображення.

Читайте штрих-коди з певної області зображення в Java.

Отримайте безкоштовну ліцензію

Ви можете отримати безкоштовну тимчасову ліцензію, щоб спробувати бібліотеку без оціночних обмежень.

Висновок

У цій статті ми дізналися, як:

  • Програмно завантажити зображення штрих-коду;
  • розпізнавати штрих-коди різних типів за зображенням;
  • читати координати штрих-коду в Java;
  • виявляти та зчитувати кілька штрих-кодів з одного зображення;
  • виявляти та зчитувати штрих-коди з певної області зображення.

Крім того, ви можете дізнатися більше про Aspose.BarCode for Java API за допомогою документації. У разі будь-яких неясностей зв’яжіться з нами на форумі.

Дивись також