Распознавание штрихкода EAN13 в JPG-файлах

В обработке реализовано распознавание штрихкодов EAN13 в JPG-файлов. Может пригодиться, к примеру, для автоматизированной разноски сканов подписанных документов.

Код модуля обработки ниже.

Процедура ОбработатьИзображенияВКаталоге(КаталогФайлов) Экспорт
Макет = ПолучитьМакет("КомпонентаРаспознаванияШтрихкодов");
Адрес = ПоместитьВоВременноеХранилище(Макет);

КодВозврата = ПодключитьВнешнююКомпоненту(Адрес, "BarcodeRecognitionAddIn", ТипВнешнейКомпоненты.Native);
Если Не КодВозврата Тогда
Сообщить("Проблема подключения внешней компоненты!");
КонецЕсли;
КомпонентаРаспознаванияШтрихкодов = Новый("AddIn.BarcodeRecognitionAddIn.AddInNativeExtension");

ТекстовыйДокумент = Новый ТекстовыйДокумент;

МассивФайлов = НайтиФайлы(КаталогФайлов,"*.jpg",Истина);
Для каждого Файл из МассивФайлов Цикл
ПутьКФайлу = Файл.ПолноеИмя;
ШтрихкодКартинки = КомпонентаРаспознаванияШтрихкодов.РаспознатьШтрихкоды(ПутьКФайлу,10);
ТекстовыйДокумент.ДобавитьСтроку(ПутьКФайлу + ";" + ШтрихкодКартинки);
КонецЦикла;

ПутьКФайлуЛога = КаталогФайлов + "log_" + Формат(ТекущаяДата(),"ДФ=yyyyMMddHHmmss") + ".txt";
ТекстовыйДокумент.Записать(ПутьКФайлуЛога);
Сообщить("Результаты распознавания в файле " + ПутьКФайлуЛога);
КонецПроцедуры

Тестировалось на платформе 8.3.12.1469 и 1С:Розница 2.2.7.39.

8 Comments

  1. acanta

    Других типов штрих-кодов не распознает? Code128?

    Reply
  2. vasilievil

    (1)нет

    Reply
  3. ifal

    На чем основана компонента? или внутри уникальный авторский код?

    Reply
  4. vasilievil

    (3)типовая, как в 1с документообороте

    Reply
  5. saa@kuzov.org

    (1) https://infostart.ru/public/877003/ основано на проекте https://github.com/zxing/zxing

    Распознает, работает (есть нюансы с настройкой сервера, ява нужна, пути там всякие).

    Reply
  6. saa@kuzov.org

    (4) Ну то есть использовать ее без купленного Документооборота нелегально?

    Reply
  7. nomadon

    (6) сюрприз) хорошо что сейчас выяснилось)

    Reply
  8. DrZombi

    (0) Спасибо!!!! 🙂

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *