kb-personal/src/content/docs/knowledge-base/Общие/Генерация штрихкода/Пример генерации штрихкодов.md
wakadakawaka ec919108a4 rebase
2025-08-19 21:01:32 +05:00

5.7 KiB
Raw Blame History

title, slug
title slug
Пример генерации штрихкодов общие-генерация-штрихкода/пример-генерации-штрихкодов
//   Структура:
//   * Ширина - Число - ширина изображения штрих кода.
//   * Высота - Число - высота изображения штрих кода.
//   * ТипКода - Число - штрихкода.
//       Возможные значение:
//      99 -  Авто выбор
//      0 - EAN8
//      1 - EAN13
//      2 - EAN128
//      3 - Code39
//      4 - Code128
//      5 - Code16k
//      6 - PDF417
//      7 - Standart (Industrial) 2 of 5
//      8 - Interleaved 2 of 5
//      9 - Code39 Расширение
//      10 - Code93
//      11 - ITF14
//      12 - RSS14
//      14 - EAN13AddOn2
//      15 - EAN13AddOn5
//      16 - QR
//      17 - GS1DataBarExpandedStacked
//      18 - Datamatrix ASCII
//      19 - Datamatrix BASE256
//      20 - Datamatrix TEXT
//      21 - Datamatrix C40
//      22 - Datamatrix X12
//      23 - Datamatrix EDIFACT
//      24 - Datamatrix GS1ASCII
//      25 - Aztec
//   * ОтображатьТекст - Булево - отображать HRI теста для штрихкода.
//   * РазмерШрифта - Число - размер шрифта HRI теста для штрихкода.
//   * УголПоворота - Число - угол поворота.
//      Возможные значения: 0, 90, 180, 270.
//   * Штрихкод - Строка - значение штрихкод в виде строки или Base64.
//   * ТипВходныхДанных - Число - тип входных данных
//      Возможные значения: 0 - Строка, 1 - Base64
//   * ПрозрачныйФон - Булево - прозрачный фон изображения штрихкода.
//   * УровеньКоррекцииQR - Число - уровень коррекции штрихкода QR.
//      Возможные значения: 0 - L, 1 - M, 2 - Q, 3 - H.
//   * Масштабировать - Булево -  масштабировать изображение штрихкода.
//   * СохранятьПропорции - Булево - сохранять пропорции изображения штрихкода.
//   * ВертикальноеВыравнивание - Число - вертикальное выравнивание штрихкода.
//      Возможные значения: 1 - По верхнему краю, 2 - По центру, 3 - По нижнему краю
//   * GS1DatabarКоличествоСтрок - Число - количество строк в штрихкоде GS1Databar.
//   * УбратьЛишнийФон - Булево
//   * ЛоготипКартинка - Строка - строка с base64 представлением png картинки логотипа.
//   * ЛоготипРазмерПроцентОтШК - Число - процент от генерированного QR для вписывания логотипа.
//
ПараметрыШтрихкода = ГенерацияШтрихкода.ПараметрыГенерацииШтрихкода();
ПараметрыШтрихкода.Ширина = 10;
ПараметрыШтрихкода.Высота = 3;
ПараметрыШтрихкода.ТипКода = 1; // EAN13
ПараметрыШтрихкода.УголПоворота = 0;
ПараметрыШтрихкода.Штрихкод = "123456789013";
ПараметрыШтрихкода.ПрозрачныйФон = Истина;
ПараметрыШтрихкода.Масштабировать = Истина;
ПараметрыШтрихкода.СохранятьПропорции = Истина;
ПараметрыШтрихкода.ВертикальноеВыравнивание = 2; 
ПараметрыШтрихкода.ТипВходныхДанных = 0;  // Тип входных данных (0-Строка, 1-Base64)


// Функция ИзображениеШтрихкода(ПараметрыШтрихкода) Экспорт
// Параметры
//
//   ПараметрыШтрихкода - см. ГенерацияШтрихкода.ПараметрыГенерацииШтрихкода.
// Возвращаемое значение
//
//   Структура:
//      Результат - Булево - результат генерации штрихкода.
//      ДвоичныеДанные - ДвоичныеДанные - двоичные данные изображения штрихкода.
//      Картинка - Картинка - картинка с сформированным штрихкодом или НЕОПРЕДЕЛЕНО.
СтруктураШтрихкода = ГенерацияШтрихкода.ИзображениеШтрихкода(ПараметрыШтрихкода); 

Если СтруктураШтрихкода.Результат 
	И СтруктураШтрихкода.Картинка <> Неопределено Тогда
	
	ПутьКФайлу = "C:\temp\T8\Генерация штрихкода\Штрихкод_Пример.png";
	
	Попытка
		СтруктураШтрихкода.Картинка.Записать(ПутьКФайлу);
		ОбщегоНазначения.СообщитьПользователю("Штрихкод сформирован и записан в файл");
	Исключение
		ОбщегоНазначения.СообщитьПользователю(КраткоеПредставлениеОшибки(ИнформацияОбОшибке()));
	КонецПопытки;
	
КонецЕсли;