Распознавание штрих-кода картинки ZXing (java)

06.02.24

Разработка - Инструментарий разработчика

UPD 06.02.2024 Версия встроенных библиотек 3.5.3 Обработка позволяет распознавать штрих-код и QR-код картинки с помощью ZXing (java).

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Распознавание штрих-кода картинки ZXing (java):
.epf 884,40Kb ver:2.3.5.3
8
8 Скачать (3 SM) Купить за 2 450 руб.
Распознавание штрих-кода картинки ZXing (java):
.epf 819,52Kb ver:2.3.4.1
105
105 Скачать (3 SM) Купить за 2 450 руб.
Распознавание штрих-кода картинки ZXing (java):
.epf 878,42Kb ver:2.3.5.0
21
21 Скачать (3 SM) Купить за 2 450 руб.

Обработка позволяет распознавать штрих-код и QR-код на картинке с помощью ZXing (java)

ZXing - проект с открытым исходным кодом, мультиформатный 1D/2D обработчик изображений штрих-кодов.
Библиотека реализована на Java, с портами на другие языки.

Для работы требуется установленная Java

Данная обработка 1С позволяет использовать ZXing для распознавания штрих-кодов на картинке.
Файлы библиотеки встроены в макеты. Тестировалась на версии платформы 8.3.12.1440, 8.3.15.1700, 8.3.20.1789, 8.3.22.2283

Библиотека ZXing, по заявлению авторов, распознает форматы:

Decode a 1D or 2D barcode from an image on the web. Supported formats include:

  • UPC-A and UPC-E
  • EAN-8 and EAN-13
  • Code 39
  • Code 93
  • Code 128
  • ITF
  • Codabar
  • RSS-14 (all variants)
  • RSS Expanded (most variants)
  • QR Code
  • Data Matrix
  • Aztec ('beta' quality)
  • PDF 417 ('alpha' quality)
  • MaxiCode

Тестовый сайт разработчика ZXing

Проверено на следующих конфигурациях и релизах:

  • Управление торговлей, редакция 11, релизы 11.5.12.87

штрихкод штрих-код qr-код qr code распознать распазнать zxing картинка сканер zbar

См. также

SALE! 15%

Инструментарий разработчика Роли и права Запросы СКД Программист Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Платные (руб)

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

10000 руб.

02.09.2020    159426    872    399    

861

SALE! 15%

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP и т.д.). Поддерживаются управляемые и обычные формы. Может выполнять свертку сразу нескольких баз данных и выполнять их автоматически без непосредственного участия пользователя.

8400 7140 руб.

20.08.2024    7770    55    22    

66

Инструментарий разработчика Программист Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Инструмент для написания и отладки кода в режиме «1С:Предприятие». Представляет собой консоль кода с возможностью пошаговой отладки, просмотра значений переменных любых типов, использования процедур и функций, просмотра стека вызовов, вычисления произвольных выражений на встроенном языке в контексте точки останова, синтаксического контроля и остановки по ошибке. В консоли используется удобный редактор кода с подсветкой, контекстной подсказкой, возможностью вызова конструкторов запроса и форматной строки.

9360 руб.

17.05.2024    23435    68    45    

117

SALE! 15%

Инструменты администратора БД Инструментарий разработчика Роли и права Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

10000 8500 руб.

10.11.2023    10425    36    22    

61

SALE! 15%

Пакетная печать Печатные формы Инструментарий разработчика Программист Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:Конвертация данных 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

Инструмент, позволяющий абсолютно по-новому взглянуть на процесс разработки печатных форм. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и "прозрачность" разработки, а также навести порядок в многообразии корпоративных печатных форм.

22200 19980 руб.

06.10.2023    15400    35    7    

70

SALE! 30%

Загрузка и выгрузка в Excel Документооборот и делопроизводство (СЭД) Учет документов Распознавание документов и образов Бухгалтер Пользователь Управляемые формы 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление холдингом 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Бухгалтерский учет Управленческий учет Платные (руб)

Универсальная программа для распознавания сканов или фото товарных документов в 1С. Не требует указания параметров и предварительной настройки. Просто выбираете файл (PDF, JPG, DOC, XLS, HTML) выбираете документ 1С и нажимаете кнопку "Распознать и загрузить".

8400 5880 руб.

04.06.2019    106912    313    173    

326

SALE! 35%

Инструментарий разработчика Инструменты администратора БД Системный администратор Программист Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

4800 3120 руб.

14.01.2013    187984    1138    0    

912

Учет документов Распознавание документов и образов Бухгалтер Пользователь Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Расширение для типовых конфигурация и для самостоятельной интеграции системы распознавания документо удостоверяющих личность и прочих документов непосредственно из информационных баз "1С:Предприятия 8.3" с помощью Content AI - Passport Reader SDK. Расширение позволит не изменяя типовой код конфигурации, расширить текущий функционал несколькими кликами мыши.

12000 руб.

26.01.2016    69974    79    2    

103
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. 🅵🅾️🆇 524 30.07.18 14:40 Сейчас в теме
Можно тестовый сайт разработчика в качестве библиотеки и использовать)
POST запросом отправлять изображение и забирать Parsed Result, скажем, через XPath

Генерация, всеже, интереснее: https://zxing.appspot.com/generator
Хоть Я для этих целей гугл использую.
3. tanat74 68 30.07.18 16:56 Сейчас в теме
(1) Думаю да, но у меня это оффлайн решение.
2. efin 30.07.18 15:34 Сейчас в теме
Коллеги, я в самом начале изучения Java и как раз у меня задача подобная этой.
На основе готовой библиотеки (этой и еще PDFBox) написать JSON REST- сервис, который позволяет работать с ней через веб.
В идеале - в формате микросервиса. Идеал к которому стремлюсь это https://developer.ilovepdf.com/docs/api-reference

Мне нужна реальная помощь с шаблоном - я умею программировать только так, "от печки".

В ответку обещаю выложить на гитхаб работающий результат для всех желающих как когда-то выложил https://github.com/shachneff/BROM-Asterisk-Native
8. silberRus 73 08.11.18 17:37 Сейчас в теме
(2) смотрю профиль на гите, и c++ и ruby и pithon. А вот зачем тогда тебе 1с? не пойму.
4. efin 31.07.18 03:48 Сейчас в теме
(0) Если в имени пользователя компьютера есть пробелы, или путь каталога временных файлов 1С содержит пробелы, то обработка не работает.

Например, "C:\Users\Boris Britva\AppData\Local\Temp\v8_4F80_12.jar"
5. tanat74 68 31.07.18 14:09 Сейчас в теме
(4) Спасибо за информацию. Поправил.
6. efin 31.07.18 18:30 Сейчас в теме
(0) Подскажите, пожалуйста, вот эта обработка на сервере передает путь к файлу в java-программу.
У меня картинка со штрихкодом хранится в реквизите типа ХранилищеЗначения, и мне не хочется выгружать ее в промежуточный временный файл.

В современной платформе 1С появились потоки. Может как-то можно передать картинку через память?
7. tanat74 68 03.08.18 09:45 Сейчас в теме
(6)Не знаю. Я совсем не разбираюсь в java, только методом тыка и аналогий сумел прикрутить через файл.
9. Bond 15.11.18 14:20 Сейчас в теме
скажите, какой формат файлов поддерживается?
конкретно интересует pdf
10. tanat74 68 20.11.18 12:49 Сейчас в теме
(9) не нашел точной информации, проверял jpg и bmp
pdf - думаю нет.
11. Bond 25.11.18 22:06 Сейчас в теме
скачал обработку (через посредника), но не хочет распознавать картинку...
через онлайн распознавалку ксинга (https://zxing.org/w/decode.jspx) распознает нормально..
в чем может быть проблема?
Прикрепленные файлы:
15. tanat74 68 28.11.18 12:56 Сейчас в теме
(11) Тестовый пример работает. и приложенный Вами файл тоже.
Создал абсолютно пустую - файловую базу на платформе 1С:Предприятие 8.3 (8.3.13.1513)
Прикрепленные файлы:
16. Bond 28.11.18 17:04 Сейчас в теме
(15) может требуются какие то дополнительные действия? регистрация длл или еще что то?
17. tanat74 68 30.11.18 10:56 Сейчас в теме
18. Bond 30.11.18 15:52 Сейчас в теме
(17) установил, теперь выдает такое:
could not find or load main class com.google.zxing.client.j2se.CommandLineRunner
25. user1448521 12.08.20 12:46 Сейчас в теме
(18) Удалось решить проблему?
26. tanat74 68 12.08.20 14:21 Сейчас в теме
(25) Если у вас такая же ошибка установите java. Ссылка есть в публикации.
Или можете поставить альтернативную сборку: https://adoptopenjdk.net/
Я использую for Windows x64: OpenJDK 8 (LTS) - HotSpot

В папке должно быть 3 файла: core-3.3.2.jar javase-3.3.2.jar jcommander-1.7.jar
27. user1448521 12.08.20 16:03 Сейчас в теме
(26)
В папке должно быть 3 файла


java установлена была. установка альтернативной сборки не дает результата
28. user1448521 13.08.20 16:32 Сейчас в теме
(26) не получается корректно считать штрих-коды (ошибка "could not find or load main class com.google.zxing.client.j2se.CommandLineRunner"). java ставилась и с оф.сайта и предложенная выше (и 32 и 64 разрядная). Подскажите корректную последовательность действий.
12. Bond 26.11.18 11:47 Сейчас в теме
обработка постоянно пишет что шрихкод не найден...
13. Bond 26.11.18 12:03 Сейчас в теме
причем даже тестовая картинка не распознается
14. Bond 26.11.18 12:16 Сейчас в теме
хоть у кого то заработало?
19. anvolkov1cbit 27 24.04.19 11:02 Сейчас в теме
20. anvolkov1cbit 27 24.04.19 11:03 Сейчас в теме
Если на картинке несколько штрихкодов, тогда определяет только один. Планируется возможность работы с несколькими ШК?
21. tanat74 68 24.04.19 12:41 Сейчас в теме
(20) Судя по тому что на сайте это работает, наверное как-то и тут можно. Но у меня пока не появлялось таких потребностей. Буду благодарен, если сообщите сюда, если что-то найдете.
22. borda4ev 16 08.07.19 13:57 Сейчас в теме
(21) Что бы выполнялось распознование нескольких штрих кодов, на одном изображении, нужно добавить параметр --multi
23. mvv1975 836 08.08.19 15:04 Сейчас в теме
Добрый день. Интересует, будет ли компонента работать на 64 разрядном сервере 1С?
24. tanat74 68 08.08.19 15:23 Сейчас в теме
(23) Проблем не должно возникнуть, там командной строкой вызывается java приложение.
29. пользователь 09.06.21 16:53
Сообщение было скрыто модератором.
...
30. tanat74 68 10.06.21 09:04 Сейчас в теме
(29) Здравствуйте.
Файлы в макетах обработки, обработка сама их достает во временный каталог.
Насколько вижу, у вас файл-картинка находиться по сети, у меня кажется так не получилось заставить работать. Попробуйте локально.
31. maxpiter 148 10.06.21 09:49 Сейчас в теме
(30) а вы можете этим 3 файла отдельно выложить? Я распрзнаю не из 1С 8.
С чего вы взяли что по сети? Хотя и по сети для java не должно быть проблем.
Полученная выше строка из отладчика 1Сного взята.
32. tanat74 68 10.06.21 10:05 Сейчас в теме
(31) файлы выложены в обработке, можете их от туда достать.
потому что у вас строка в конце: --try_harder file:////tmp/v8_79FK3k_60.jpg1"
maxpiter; +1 Ответить
33. maxpiter 148 10.06.21 11:50 Сейчас в теме
(32) Спасибо, вытащил, а вот дальше снова трабл

C:\w>java -cp core.jar;javase.jar;commander.jar com.google.zxing.client.j2se.CommandLineRunner --dump_results --try_harder c:\w\ok1.jpg
Error: Could not find or load main class com.google.zxing.client.j2se.CommandLineRunner 
Caused by: java.lang.ClassNotFoundException: com.google.zxing.client.j2se.CommandLineRunner


выше про это писали, но как починить нет

C:\w>java --version
openjdk 11.0.11 2021-04-20
OpenJDK Runtime Environment AdoptOpenJDK-11.0.11+9 (build 11.0.11+9)
OpenJDK 64-Bit Server VM AdoptOpenJDK-11.0.11+9 (build 11.0.11+9, mixed mode)
34. tanat74 68 10.06.21 12:18 Сейчас в теме
(33) Обработка работает в готовом виде, вы писали что переделываете не под 1Сv8 - вероятно тут какие то накладки. Попробуйте указывать файл как в обработке:
--try_harder file:///c:/w/ok1.jpg
35. maxpiter 148 10.06.21 12:22 Сейчас в теме
(34) дело не в файле, до него еще не дошли.
java не видит класса com.google.zxing.client.j2se.CommandLineRunner

C:\w>java -cp core.jar;javase.jar;commander.jar com.google.zxing.client.j2se.CommandLineRunner --dump_results --try_harder file:///c:/w/ok1.jpg
Error: Could not find or load main class com.google.zxing.client.j2se.CommandLin
eRunnerCaused by: java.lang.ClassNotFoundException: com.google.zxing.client.j2se.CommandLineRunner
36. tanat74 68 10.06.21 12:33 Сейчас в теме
(35)
core.jar;javase.jar;commander.jar

перечисляя файлы, у вас нет j у commander. Проверьте имя файла в папке.
Прикрепленные файлы:
37. maxpiter 148 10.06.21 12:34 Сейчас в теме
(36) имена файлов правильные
Прикрепленные файлы:
38. maxpiter 148 10.06.21 12:37 Сейчас в теме
(36) охренеть, переименовал commander в jcommander и заработало, как так то
39. maxpiter 148 10.06.21 12:40 Сейчас в теме
Но ШК не находит ни одного

C:\Program Files\AdoptOpenJDK\jdk-11.0.11.9-hotspot\bin>java -cp core.jar;javase
.jar;jcommander.jar com.google.zxing.client.j2se.CommandLineRunner --dump_result
s --try_harder file:///c:/w/ok1.jpg
file:///c:/w/ok1.jpg: No barcode found

C:\Program Files\AdoptOpenJDK\jdk-11.0.11.9-hotspot\bin>java -cp core.jar;javase
.jar;jcommander.jar com.google.zxing.client.j2se.CommandLineRunner --dump_result
s --try_harder file:///c:/w/ok2.jpg
file:///c:/w/ok2.jpg: No barcode found

C:\Program Files\AdoptOpenJDK\jdk-11.0.11.9-hotspot\bin>java -cp core.jar;javase
.jar;jcommander.jar com.google.zxing.client.j2se.CommandLineRunner --dump_result
s --try_harder file:///c:/w/ok3.jpg
file:///c:/w/ok3.jpg: No barcode found

C:\Program Files\AdoptOpenJDK\jdk-11.0.11.9-hotspot\bin>java -cp core.jar;javase
.jar;jcommander.jar com.google.zxing.client.j2se.CommandLineRunner --dump_result
s --try_harder file:///c:/w/ok4.jpg
file:///c:/w/ok4.jpg: No barcode found

C:\Program Files\AdoptOpenJDK\jdk-11.0.11.9-hotspot\bin>java -cp core.jar;javase
.jar;jcommander.jar com.google.zxing.client.j2se.CommandLineRunner --dump_result
s --try_harder file:///c:/w/no1.jpg
file:///c:/w/no1.jpg: No barcode found

C:\Program Files\AdoptOpenJDK\jdk-11.0.11.9-hotspot\bin>java -cp core.jar;javase
.jar;jcommander.jar com.google.zxing.client.j2se.CommandLineRunner --dump_result
s --try_harder file:///c:/w/no2.jpg
file:///c:/w/no2.jpg: No barcode found

C:\Program Files\AdoptOpenJDK\jdk-11.0.11.9-hotspot\bin>java -cp core.jar;javase
.jar;jcommander.jar com.google.zxing.client.j2se.CommandLineRunner --dump_result
s --try_harder file:///c:/w/no3.jpg
file:///c:/w/no3.jpg: No barcode found

C:\Program Files\AdoptOpenJDK\jdk-11.0.11.9-hotspot\bin>java -cp core.jar;javase
.jar;jcommander.jar com.google.zxing.client.j2se.CommandLineRunner --dump_result
s --try_harder file:///c:/w/no4.jpg
file:///c:/w/no4.jpg: No barcode found

C:\Program Files\AdoptOpenJDK\jdk-11.0.11.9-hotspot\bin>java -cp core.jar;javase
.jar;jcommander.jar com.google.zxing.client.j2se.CommandLineRunner --dump_result
s --try_harder file:///c:/w/no5.jpg
file:///c:/w/no5.jpg: No barcode found
Показать
41. tanat74 68 10.06.21 12:48 Сейчас в теме
(39) Качество и форматы распознавания можно проверить на тестовом сайте.
40. maxpiter 148 10.06.21 12:47 Сейчас в теме
но некоторые находит
Спасибо за помощь

C:\Program Files\AdoptOpenJDK\jdk-11.0.11.9-hotspot\bin>java -cp core.jar;javase
.jar;jcommander.jar com.google.zxing.client.j2se.CommandLineRunner --dump_result
s --try_harder file:///c:/w/ok1.jpg
file:///c:/w/ok1.jpg (format: CODE_128, type: TEXT):
Raw result:
101210100001698
Parsed result:
101210100001698
Found 2 result points.
Point 0: (3123.0,1744.5)
Point 1: (3123.0,1274.0)


C:\Program Files\AdoptOpenJDK\jdk-11.0.11.9-hotspot\bin>java -cp core.jar;javase
.jar;jcommander.jar com.google.zxing.client.j2se.CommandLineRunner --dump_result
s --try_harder file:///c:/w/ok2.jpg
file:///c:/w/ok2.jpg (format: CODE_128, type: TEXT):
Raw result:
101210100005642
Parsed result:
101210100005642
Found 2 result points.
Point 0: (3094.0,1737.0)
Point 1: (3094.0,1267.5)


C:\Program Files\AdoptOpenJDK\jdk-11.0.11.9-hotspot\bin>java -cp core.jar;javase
.jar;jcommander.jar com.google.zxing.client.j2se.CommandLineRunner --dump_result
s --try_harder file:///c:/w/ok3.jpg
file:///c:/w/ok3.jpg (format: CODE_128, type: TEXT):
Raw result:
101210100005839
Parsed result:
101210100005839
Found 2 result points.
Point 0: (3272.0,1777.0)
Point 1: (3272.0,1272.5)


C:\Program Files\AdoptOpenJDK\jdk-11.0.11.9-hotspot\bin>java -cp core.jar;javase
.jar;jcommander.jar com.google.zxing.client.j2se.CommandLineRunner --dump_result
s --try_harder file:///c:/w/ok4.jpg
file:///c:/w/ok4.jpg (format: CODE_128, type: TEXT):
Raw result:
101210100005840
Parsed result:
101210100005840
Found 2 result points.
Point 0: (3277.0,1776.0)
Point 1: (3277.0,1272.0)


C:\Program Files\AdoptOpenJDK\jdk-11.0.11.9-hotspot\bin>java -cp core.jar;javase
.jar;jcommander.jar com.google.zxing.client.j2se.CommandLineRunner --dump_result
s --try_harder file:///c:/w/ok5.jpg
file:///c:/w/ok5.jpg: No barcode found

C:\Program Files\AdoptOpenJDK\jdk-11.0.11.9-hotspot\bin>java -cp core.jar;javase
.jar;jcommander.jar com.google.zxing.client.j2se.CommandLineRunner --dump_result
s --try_harder file:///c:/w/no1.jpg
file:///c:/w/no1.jpg: No barcode found

C:\Program Files\AdoptOpenJDK\jdk-11.0.11.9-hotspot\bin>java -cp core.jar;javase
.jar;jcommander.jar com.google.zxing.client.j2se.CommandLineRunner --dump_result
s --try_harder file:///c:/w/no2.jpg
file:///c:/w/no2.jpg: No barcode found

C:\Program Files\AdoptOpenJDK\jdk-11.0.11.9-hotspot\bin>java -cp core.jar;javase
.jar;jcommander.jar com.google.zxing.client.j2se.CommandLineRunner --dump_result
s --try_harder file:///c:/w/no3.jpg
file:///c:/w/no3.jpg: No barcode found
Показать
42. tanat74 68 10.06.21 12:49 Сейчас в теме
(40) для определения конкретного вида шк есть специальный ключ, может он поможет:
--possible_formats CODE_128
maxpiter; +1 Ответить
43. Трактор 1254 21.09.21 10:43 Сейчас в теме
Работает. Распознаёт несколько штрихкодов с одной картинки. Всё хорошо. Прикольно, что ZXing по-разному работает на разных языках.

Обсуждаемая обработка из 50 штрихкодов на одной картинке распознала 42. Причём в двух случаях написала неверные коды.

Вот эта приблуда http://zbar.sourceforge.net/download.html на той же картинке распознала только 30, но все правильно.

Сейчас я озаботился тем, чтобы показывать пользователю распознанные штрихкоды, чтобы он мог перефотать нераспознанное. Колупаю вот эту разарботку https://waksoft.susu.ru/2021/05/03/kak-sgenerirovat-i-prochitat-qr-kod-v-python/
44. TotalMark 17 29.11.23 18:02 Сейчас в теме
Нужна компонента для 1С, которая будет читать ШК, QR на pdf этикетках и возвращать его числовое значение. Для ПК. Шаблонов этикеток 5 штук. В рамках этих форматов положение ШК или QR не меняется. Вы можете помочь доработать вашу компоненту под такой запрос на коммерческой основе ?
45. tanat74 68 30.11.23 10:40 Сейчас в теме
(44) Здравствуйте. Нет не смогу.
Оставьте свое сообщение