Штрих-коди відіграють важливу роль у точному відстеженні запасів і доставці продуктів від виробництва до точки продажу. У деяких випадках нам може знадобитися зчитувати штрих-коди із зображень програмним шляхом. Ми можемо легко виявляти, розпізнавати та читати різні типи штрих-кодів і QR-кодів у програмах Java. Це допомагає розробляти програми для зчитування штрих-кодів або сканери. У цій статті ми навчимося читати штрих-код із зображення за допомогою Java.
У цій статті будуть розглянуті такі теми:
- Що таке штрих-код
- Java API для читання штрих-коду із зображення
- Зчитування штрих-коду із зображення
- Розпізнавання штрих-коду певного типу
- Зчитування декількох штрих-кодів із зображення
- Отримайте координати X і Y штрих-коду
- Зчитування штрих-коду з певної області зображення
Що таке штрих-код
Штрих-код — це машинозчитуваний код, який представляє закодовані дані у вигляді чисел і шаблону паралельних ліній. На зображенні штрих-коду показано ряд паралельних чорних і білих смуг різної ширини, інтервалу та розміру. Зчитувачі штрих-кодів або сканери сканують зображення штрих-кодів і декодують інформацію.
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
Ми можемо прочитати штрих-код певного типу із зображення, виконавши наведені нижче дії.
- По-перше, прочитайте дані буфера файлу зображення за допомогою методу 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
Ми також можемо зчитувати всі доступні штрих-коди із зображення, виконавши наведені нижче дії.
- По-перше, завантажте зображення за допомогою класу 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);
}
}
Зчитування штрих-коду з певної області зображення в 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;
- виявляти та зчитувати кілька штрих-кодів з одного зображення;
- виявляти та зчитувати штрих-коди з певної області зображення.
Крім того, ви можете дізнатися більше про Aspose.BarCode for Java API за допомогою документації. У разі будь-яких неясностей зв’яжіться з нами на форумі.