Распознавание штрихкодов выполняется с помощью COM-сервера FileConverter на компьютерах с установленной службой обработки событий и службой файловых хранилищ. Необходимые библиотеки копируются во время установки служб.
Для отладки программного кода на локальном компьютере скопируйте библиотеки Aspose.PDF.dll, Aspose.BarCode.dll, Directum.BarcodeRecognition.dll, Directum.BarcodeRecognition.resources.dll в папку:
• | %COMMONPROGRAMFILES%\NPO Computer Shared\IS-Builder\FileConverter – для 32-разрядных ОС; |
• | %COMMONPROGRAMFILES(x86)%\NPO Computer Shared\IS-Builder\FileConverter– для 64-разрядных ОС. |
Типы поддерживаемых штрихкодов:
Линейные |
Двухмерные |
Почтовые |
---|---|---|
Codabar CodablockF Code128 Code93Extended Code93Standard Code32 Code11 DatabarExpanded DatabarExpandedStacked DatabarLimited DatabarOmniDirectional DatabarStacked DatabarStackedOmniDirectional DatabarTruncated DataLogic2of5 IATA2of5 Interleaved2of5 EAN14 EAN13 EAN8 GS1Code128 ISBN ISMN ISSN ITF6 ITF14 MaxiCode MSI OPC PatchCode PZN SCC14 SSCC18 Standard2of5 Supplement VIN UPCA UPCE Code39Extended Code39Standard PharmaCode |
Aztec Code16K PDF417 CompactPdf417 DataMatrix DotCode DutchKIX GS1DataMatrix GS1QR MacroPdf417 Matrix2of5 QR MicroPdf417 MicroQR MicrE13B |
AustraliaPost AustralianPosteParcel DeutschePostIdentcode DeutschePostLeitcode ItalianPost25 OneCode Planet Postnet RM4SCC SwissPostParcel |
Для программного распознавания штрихкодов используйте функции:
• | FCRecognizeBarcodeInEDocument – извлекает штрихкоды из документа; |
• | FCCanRecognizeBarcodeInFile – определяет, может ли механизм распознавания штрихкодов обработать указанный файл; |
• | FCRecognizeBarcodeInFile – извлекает штрихкоды из файла. |
Примечание
В параметры функций, извлекающих штрихкоды, рекомендуется передавать только те типы штрихкодов, которые используются в организации. Это связано с тем, что извлечение каждого дополнительного типа штрихкода заметно увеличивает время распознавания.
Подробнее см. в справке по функциям в компоненте Функции ISBL.
Постановка задачи Извлечь из указанного файла штрихкоды с типами Code128, QR, MicroQR. Программный код
BARCODE_TYPE_ELEMENT_NAME = "Type" BARCODE_VALUE_ELEMENT_NAME = "BarcodeString" BARCODE_PAGE_ELEMENT_NAME = "Page" BARCODE_CHECKSUM_ELEMENT_NAME = "Checksum" // Определить полный путь к файлу, из которого извлекаются штрихкоды. FILE_NAME = 'D:\ImageFiles\SampleBarcode.png' // Определить типы извлекаемых из файла штрихкодов. BARCODE_TYPES = 'Code128,QR,MicroQR'
// Извлечение штрихкодов с типами Code128, QR и MicroQR из указанного файла. RecognizedBarcodes = FCRecognizeBarCodeInFile(FILE_NAME; BARCODE_TYPES; FALSE; FALSE; FALSE; 300) if RecognizedBarcodes.Count > 0 foreach BarcodeInfo in RecognizedBarcodes BarcodeInfoMessage = Format('Barcode "%0:s" (checksum "%1:s") of type "%2:s" was recognized at the %3:d page.'; ArrayOf( BarcodeInfo.ValueByName(BARCODE_VALUE_ELEMENT_NAME); BarcodeInfo.ValueByName(BARCODE_CHECKSUM_ELEMENT_NAME); BarcodeInfo.ValueByName(BARCODE_TYPE_ELEMENT_NAME); BarcodeInfo.ValueByName(BARCODE_PAGE_ELEMENT_NAME))) ShowMessage(BarcodeInfoMessage) endforeach else ShowMessage('Barcode not found.') endif |
© Компания Directum, 2020 | Сообщество пользователей Directum |