Комплектация ПО:
Программа предоставляется в виде архива со следующей структурой каталогов:
Component: папка с программным компонентом obrscanner.zip. Компонент представляет из себя zip-архив и содержит в себе файлы динамических библиотек, поддерживающих подключение в режиме NativeAPI 1С для архитектуры i386 и x64 системы Windows, а также манифест для обеспечения правильного процесса загрузки.
Distrib: Содержит необходимые системные файлы для архитектуры i386 и x64 системы Windows, необходимые для обеспечения работы компоненты. Данные файлы необходимо скопировать в системные каталоги Windows в соответствии с расположением в папках в архиве.
InfoBaseShtrih: Содержит тестовую конфигурацию для платформы «1С-Предприятие» версии 8.2 с примером использования компоненты. В данной конфигурации используется вариант компоненты, встроенный непосредственно в конфигурацию (общий макет). В данном варианте не требуется наличие на диске динамических библиотек компоненты или файла архива.
Системные требования:
1. Операционная система: Windows XP и выше, Windows Server 2000 и выше, для архитектуры i386 или x64;
2. Установленная технологическая платформа "1С-Предприятие" версии не ниже 8.2
Требования к установке:
Компонента из архива, находящаяся в каталоге "Component" должна быть встроена в макет конфигурации "1С-Предприятия". Для этого предварительно распакуйте архив на жесткий диск. Запустите конфигуратор 1С-Предприятия. В ветке конфигурации "Общие/Общие макеты" нажмите правую кнопку мыши, и в появившемся контекстном меню выберите пункт "Добавить". В появившемся окне выбора типа макета выберите "Двоичные данные". Перейдите в поле "Загрузить из файла" и выберите файл компоненты "obrscanner.zip".
Затем необходимо скопировать системные библиотеки из папки "Distrib" распакованного архива в каталоги системных файлов Windows. Для 64-битных систем: 64-битные библиотеки должны копироваться в папку System32, 64-битные — в папку SysWOW64. Для 32-битных систем — копировать библиотеки из папки архива SysWOW64 в папку system32 системы Windows. В каждой папке разные версии библиотек, хотя 2 из них имеют одинаковые имена файлов — libiconv.dll и msvcr120.dll, их надо размещать строго по соответствующим папкам. Файлы должны быть скопированы в системную папку именно на том компьютере, на котором будет запущен сервер приложений 1С.
Достоинства
Компонента может работать как на стороне клиента, так и на стороне сервера приложений. В связи с тем, что компонент оформлен в формате NativeAPI, не требует установки и регистрации. Может быть загружен как из файла динамической библиотеки, расположенного на жестком диске, так и из общего макета конфигурации 1С-предприятия. Работает как с обычными, так и с управляемыми формами. Работает на серверах архитектуры i386 и x64 (пока только для Windows, но планируется версия для Linux). Перед тем, как дать программе задание распознать изображение, к нему можно применить массу различных улучшающих эффектов – осветление, увеличение контрастности, выделение контура и т.д. В процессе распознавания можно запустить вращение изображения по 15%. В части отображения изображений штрих-кодов не требует установки никакого дополнительного программного обеспечения на компьютере клиента, так как сгенерированное изображение является стандартным для системы Windows. В отличии от других подобных компонент такого типа имеет следующие неоспоримые преимущества: 1. Генерируемое изображение является векторным, и не зависит от разрешения устройства вывода; 2. При формировании изображения не используются временные файлы на диске, изображение формируется прямо в программе на языке 1С для вставки в таблицу или на форму, что позволяет избежать конфликтов доступа к файлу, а также избежать случаев отсутствия доступа к папкам на жестком диске сервера приложений.
Использование в программах 1С 8.2, 8.3
Компонент распознавания и печати штрих-кодов оформлен в виде внешней компоненты «NativeAPI» для систем «1С-Предприятие» версии не ниже 8.2, и может быть встроен в программу несколькими способами:
- При помощи загрузки динамической библиотеки по указанному пути (в этом случае необходимо указывать путь к динамической библиотеке определенной архитектуры платформы 1С.
- При помощи указания URL к внешнему компоненту, в виде двоичных данных или ZIP-архива, в формате, аналогичном ПолучитьНавигационнуюСсылку.
- При помощи встраивания в общий макет двоичных данных архива.
Пример использования:
Процедура ПриНачалеРаботыСистемы()
ПутьКМакету = "ОбщийМакет.КомпонентаШтрихКода";
Если ПодключитьВнешнююКомпоненту(ПутьКМакету, "OBRLib",
ТипВнешнейКомпоненты.Native) Тогда
СканерОбъект = Новый("AddIn.OBRLib.OBRExtension");
ШтрихОбъект = Новый("AddIn.OBRLib.SymbolExtension");
Иначе
СканерОбъект = Null;
ШтрихОбъект = Null;
Сообщить("Невозможно подключить внешнюю компоненту!");
КонецЕсли;
КонецПроцедуры
Свойства объекта OBRExtension:
Картинка (Picture) — чтение, запись. Установка картинки для распознавания. Возможно два варианта установки данного свойства:
1: В качестве значения свойства устанавливается имя файла изображения. При этом компонента пытается загрузить файл изображения с диска по указанному пути, и определить тип его содержимого. Доступные типы графических файлов – JPEG, PNG, GIF, BMP.
2. В качестве значения свойства устанавливается строка, содержащая двоичные данные, полученные из картинки 1С:
СканерОбъект.Картинка = Картинка.ПолучитьДвоичныеДанные();
При считывании значения из данного свойства, компонент всегда возвращает двоичные данные текущей картинки, загруженной с диска или захваченной с камеры. Получить готовую картинку 1С можно следующим образом:
Картинка1С = Новый Картинка(Сканер.Картинка);
ТипыСимволов (SymbolTypes) – чтение, запись. Установка/считывание доступных для использования типов штрих-кодов. В качестве значения передаётся строка, содержащая символьные наименования типов штрих-кодов, разделённые запятой. Возможные значения следующие: "ean-13", "ean-8", "upc-e", "upc-a", "isbn-10", "isbn-13", "i2/5", "code-39", "code-128", "pdf417", "qr-code". По умолчанию установлено распознавание всех указанных типов символов.
ПоворачиватьКартинку (RotateBitmap) – чтение, запись. Содержит логическое значение – истина или ложь. В случае установки значения Истина, для наиболее качественного распознавания изображение будет поворачиваться с приращением 15 градусов, до 90 градусов.
ГоризонтальноеРазрешение (DensityX) – чтение, запись. Позволяет задать горизонтальное разрешение камеры, устанавливается число от 1 до 10. Самое мелкое разрешение – 1.
ВертикальноеРазрешение (DensityY) – чтение, запись. Позволяет задать вертикальное разрешение камеры, устанавливается число от 1 до 10. Самое мелкое разрешение – 1.
Яркость (Brightness) — Регулировка яркости переданного программе изображения
Контрастность (Contrast) — Регулировка контрастности переданного программе изображения
ОттенкиСерого (GrayScale) — Преобразование цветного изображения в изображение с оттенками серого
Освещенность (Lightness) — Регулировка освещенности переданного программе изображения
Затемненность (Darkness) — Регулировка затемненности переданного программе изображения
Насыщенность (Saturation) — Регулировка насыщенности цвета переданного программе изображения
СведенныйСвет (SplitLight) — Регулировка сведения цветов переданного программе изображения
Постеризация (Posterize) – Эффект получения обобщённого изображения с ограниченным количеством полутонов
Соляризация (Solarize) – Применение эффекта соляризации к переданному программе изображению. Регулировка глубины эффекта.
ГауссовоРазмытие (GaussianBlur) – Применение фильтра размытия по гауссу к переданному программе изображению. Регулировка глубины эффекта.
Сглаживание (AntiAlias) – Применение эффекта сглаживания к переданному программе изображению. Регулировка глубины эффекта.
Трассировка (Trace) – Применение эффекта выделения контуров изображения к переданному программе изображению. Регулировка глубины эффекта.
Инверсия (Invert) – Применение эффекта негатива к переданному программе изображению. Если переданное значение – Истина, то цвета изображения инвертируются.
Внимание! Для того, чтобы наглядно увидеть, каким образом те или иные параметры преобразования изображения влияют на результирующее изображение, запустите обработку «Обработка сканирования кодов» в демонстрационной базе данных. |
ДекодироватьBase64 (DecodeBase64) – Декодирование зашифрованной алгоритмом Base64 строки данных, возвращаемой из внешней компоненты при распознавании.
КодироватьBase64(EncodeBase64) – Кодирование строки данных 1С алгоритмом Base64.
СканироватьРисунок (ScanPicture) – Сканирование рисунка, переданного компоненте в свойстве «Картинка», на предмет наличия штрих-кодов. Декодированные данные возвращаются в программу в виде внутреннего представления 1С массива структур со следующим набором полей:
- ТипКодаСтр – тип распознанного символа в виде текстовой строки с наименованием типа.
- Данные – строка с распознанными данными, закодированная в формате base64. Может быть раскодирована при помощи следующего кода:
Данные = СканерОбъект.ДекодироватьBase64(ДанныеСканирования[Сч].Данные);
- Угол – угол, на который было повернуто изображение для того, чтобы распознать символ. Число с плавающей точкой.
- Аддон – строка с именем дополнения, которое было применено для распознавания.
- Локации – массив структур, содержащих координаты точек контура участка изображения, в котором найден распознанный символ. Каждая структура содержит поля X и Y, являющиеся целыми числами.
Получение описанного массива структур из результирующей строки возможна при помощи следующего кода 1С:
ДанныеСканирования = ЗначениеИзСтрокиВнутр(Коды);
ПолучитьФрагмент (GetFragment) – возвращает фрагмент исходного рисунка, содержащий обнаруженный символ штрих-кода (рис.2). Рисунок возвращается в виде двоичных данных 1С и может быть передан в конструктор встроенного объекта 1С «Картинка»:
Рисунок = Новый Картинка(ПолучитьФрагмент(1));
В качестве параметра в функцию передается порядковый номер обнаруженного символа, первый фрагмент обозначается единицей.
Свойства объекта SymbolExtension:
ШтрихкодДанные (BarcodeData) – Установка и чтение строки данных для преобразования в штрих-код (подробнее в разделе «Формат штрих-кодов»).
ШтрихкодТип (BarcodeType) – Установка и чтение типа штрих-кода. В качестве значения передается числовой код. Соответствие типов штрих-кодов числовым кодам приведено в таблице:
1 |
Code 11 |
2 |
Standard Code 2 of 5 |
3 |
Interleaved 2 of 5 |
4 |
Code 2 of 5 IATA") |
6 |
Code 2 of 5 Data Logic |
7 |
Code 2 of 5 Industrial |
8 |
Code 3 of 9 (Code 39) |
9 |
Extended Code 3 of 9 (Code 39+) |
13 |
EAN |
16 |
GS1-128 (UCC.EAN-128) |
18 |
Codabar |
20 |
Code 128 (automatic subset switching) |
21 |
Deutsche Post Leitcode |
22 |
Deutsche Post Identcode |
23 |
Code 16K |
24 |
Code 49 |
25 |
Code 93 |
28 |
Flattermarken |
29 |
GS1 DataBar-14 |
30 |
GS1 DataBar Limited |
31 |
GS1 DataBar Extended |
32 |
Telepen Alpha |
34 |
UPC A |
37 |
UPC E |
40 |
PostNet |
47 |
MSI Plessey |
49 |
FIM |
50 |
LOGMARS |
51 |
Pharmacode One-Track |
52 |
PZN |
53 |
Pharmacode Two-Track |
55 |
PDF417 |
56 |
PDF417 Truncated |
57 |
Maxicode |
58 |
QR Code |
60 |
Code 128 (Subset B) |
63 |
Australia Post Standard Customer |
66 |
Australia Post Reply Paid |
67 |
Australia Post Routing |
68 |
Australia Post Redirection |
69 |
ISBN (EAN-13 with verification stage) |
70 |
Royal Mail 4 State (RM4SCC) |
71 |
Data Matrix |
72 |
EAN-14 |
74 |
CODABLOCKF |
75 |
NVE-18 |
76 |
Japanese Postal Code |
77 |
Korea Post |
79 |
GS1 DataBar-14 Stacked |
80 |
GS1 DataBar-14 Stacked Omnidirectional |
81 |
GS1 DataBar Expanded Stacked |
82 |
PLANET |
84 |
MicroPDF417 |
85 |
USPS OneCode |
86 |
Plessey Code |
87 |
Telepen Numeric |
89 |
ITF-14 |
90 |
Dutch Post KIX Code |
92 |
Aztec Code |
93 |
DAFT Code |
97 |
Micro QR Code |
98 |
HIBC Code 128 |
99 |
HIBC Code 39 |
102 |
HIBC Data Matrix |
104 |
HIBC QR Code |
106 |
HIBC PDF417 |
108 |
HIBC MicroPDF417 |
110 |
HIBC_BLOCKF |
112 |
HIBC Aztec Code |
128 |
Aztec Runes |
129 |
Code 32 |
130 |
Composite Symbol with EAN linear component |
131 |
Composite Symbol with GS1-128 linear component |
132 |
Composite Symbol with GS1 DataBar-14 linear component |
133 |
Composite Symbol with GS1 DataBar Limited component |
134 |
Composite Symbol with GS1 DataBar Extended component |
135 |
Composite Symbol with UPC A linear component |
136 |
Composite Symbol with UPC E linear component |
137 |
Composite Symbol with GS1 DataBar-14 Stacked component |
138 |
Composite Symbol with GS1 DataBar-14 Stacked Omnidirectional component |
139 |
Composite Symbol with GS1 DataBar Expanded Stacked component |
140 |
Channel Code |
141 |
Code One |
142 |
Grid Matrix |
Опция1 (Option1), Опция2 (Option2), Опция3 (Option3) – Дополнительные опции, требующиеся для некоторых типов штрих-кодов.
Угол (Angle) – Угол поворота результирующего изображения в градусах.
Первичный (Primary) – Дополнительные данные для составных штрих-кодов.
ЦветФона (BackColor) – Цвет фона (подложки) изображения сгенерированного штрих-кода. В качестве параметра могут использоваться следующие значения:
- Целое число, в котором упакованы значения RGB цвета. Упаковку можно произвести по следующей формуле: Красный + (Зеленый * 256) + (Синий * 65536);
- Строка с наименованием цвета на английском языке. Список соответствии наименований цветов представлен в таблице. Все наименования цветов соответствуют наименованиям Web-цветов в 1С.
ЦветТекста (TextColor) – Цвет шрифта, используемого при отображении надписи сгенерированного штрих-кода. Требования к передаваемому значению такие же, как и для свойства «ЦветФона».
ЦветШтриха (BarColor) – Цвет, используемый при отображении графических элементов (штрихов) сгенерированного штрих-кода. Требования к передаваемому значению такие же, как и для свойства «ЦветФона».
ВыводитьТекст (ShowText) – Для типов символов, в которых возможен вывод надписи в изображении штрих-кода (например, EAN-13) позволяет включать и отключать отображение надписи. В случае присвоения значения «Истина» надрись будет отображена, в противном случае – отключена.
ПолеСлева (MarginLeft), ПолеСверху (MarginTop), ПолеСправа (MarginRight), ПолеСнизу (MarginBottom), ОтступСлева (PaddingLeft), ОтступСверху (PaddingTop), ОтступСправа (PaddingRight), ОтступСнизу (PaddingBottom) – отвечают за размеры отступов и полей. Соответствие параметров показано на рисунке.
ТолщинаРамки (BorderWidth) – Установка толщины рамки вокруг штрих-кода (0 – рамка не используется).
РазмерШрифта (FontSize) – Установка размера шрифта человекочитаемой текстовой метки, выводимой вместе с штрих-кодом. Допускаются значения в виде целых чисел от 7 до 72.
СемействоШрифта (FontFamily) – Текстовая строка с наименованием семейства шрифта, с применением которого будет отображена текстовая метка на штрих-коде. Допустимые значения – наименования шрифтов, установленных в системе (на сервере, где будет запущена компонента). Например – «Arial», «Times New Roman», «Tahoma».
СтильШрифта (FontStyle) – Текстовая строка, содержащая набор стилей шрифта, с применением которого будет отображена текстовая метка на штрих-коде. В случае применения нескольких стилей возможно их перечисление через запятую. Допустимые значения:
- Bold – жирный шрифт
- Italic – наклонный шрифт
- Underline – подчеркнутый шрифт
- Strikeout – зачеркнутый шрифт
Пример значения: «Bold, Italic».
Методы объекта OBRExtension:
СоздатьРисунок (GenPicture) – Сгенерировать векторный рисунок в формате WMF (windows metafile) в соответствии с установленными ранее параметрами. Параметры метода:
Ширина: Ширина результирующего изображения
Высота: Высота результирующего изображения
Возвращаемое значение: двоичные данные, которые могут быть переданы в конструктор встроенного объекта 1С «Картинка».
Условия распространения
Программное обеспечение распространяется в виде ZIP-архива с упакованными двоичными файлами. Код программы в комплект поставки не входит, но может быть предоставлен для собственного использования, но не для коммерческих целей.
Техническая поддержка:
Бесплатная техподдержка в течение 1 месяца с момента покупки. Возможно приобретение платной технической поддержки.
Гарантия возврата денег
ООО «Инфостарт» гарантирует Вам 100% возврат оплаты, если программа не соответствует заявленному функционалу из описания. Деньги можно вернуть в полном объеме, если вы заявите об этом в течение 14-ти дней со дня поступления денег на наш счет.
Программа настолько проверена в работе, что мы с полной уверенностью можем дать такую гарантию. Мы хотим, чтобы все наши покупатели оставались довольны покупкой.
Для возврата оплаты просто свяжитесь с нами.