Sky1C

Разделы каталога

Товар дняХиты продажПереносы данных 1СПродукты и лицензии 1СПрочий Софт

Информация

О насИнтересноеДоставка и оплатаКонтакты

1С 8.2 Печать штрихкодов

1С 8.2 Печать штрихкодов

Компоненты печати штрихкодов можно найти в демонстрационной конфигурации "Управляемое приложение". Там же находится пример печати штрихкодов. Загрузить конфигурацию можно здесь при наличии доступа или здесь.

Одна из компонент печати штрихкодов - для платформы windows 32, прикреплена к данной статье в формате 7z (это архив, извлекается winrar-ом).

Рассмотрим пример процедуры печати штрихкодов для случая, когда у нас имеются компоненты для различных платформ: // Формирование изображения штрихкода для указанного объекта // // Параметры: //  Нет // // Возвращаемое значение: //  Картинка - Картинка со сформированным штрихкодом ИЛИ НЕОПРЕДЕЛЕНО Функция ПолучитьКартинкуШтрихкода(ШтрихКод, ТипКода=Неопределено) Экспорт  // В зависимости от типа платформы подключим соответствующую внешнюю компоненту  ИнформацияОСистеме = Новый СистемнаяИнформация;    Если ИнформацияОСистеме.ТипПлатформы = ТипПлатформы.Windows_x86 Тогда    ПодключитьВнешнююКомпоненту("ОбщийМакет.КомпонентаПечатиШтрихкодовWindows32", "КартинкаШтрихкода", ТипВнешнейКомпоненты.Native);   ИначеЕсли ИнформацияОСистеме.ТипПлатформы = ТипПлатформы.Windows_x86_64 Тогда    ПодключитьВнешнююКомпоненту("ОбщийМакет.КомпонентаПечатиШтрихкодовWindows64", "КартинкаШтрихкода", ТипВнешнейКомпоненты.Native);   ИначеЕсли ИнформацияОСистеме.ТипПлатформы = ТипПлатформы.Linux_x86 Тогда    ПодключитьВнешнююКомпоненту("ОбщийМакет.КомпонентаПечатиШтрихкодовLinux32", "КартинкаШтрихкода", ТипВнешнейКомпоненты.Native);     Иначе    ПодключитьВнешнююКомпоненту("ОбщийМакет.КомпонентаПечатиШтрихкодовLinux64", "КартинкаШтрихкода", ТипВнешнейКомпоненты.Native);   КонецЕсли;  // Создадим объект внешней компоненты  Компонент = Новый("AddIn.КартинкаШтрихкода.Barcode");  // Если нет возможности рисовать  Если НЕ Компонент.ГрафикаУстановлена Тогда   // То картинку сформировать не сможем   Возврат Неопределено;  КонецЕсли;  // Если в системе установлен шрифт Tahoma  Если Компонент.НайтиШрифт("Tahoma") = Истина Тогда   // Выбираем его как шрифт для формирования картинки   Компонент.Шрифт = "Tahoma";  Иначе   // Шрифт Tahoma в системе отсутствует   // Обойдем все доступные компоненте шрифты   Для Сч = 0 По Компонент.КоличествоШрифтов -1 Цикл    // Получим очередной шрифт, доступный компоненте    ТекущийШрифт = Компонент.ШрифтПоИндексу(Сч);    // Если шрифт доступен    Если ТекущийШрифт <> Неопределено Тогда     // Они и будет шрифтом для формирования штрихкода     Компонент.Шрифт = ТекущийШрифт;     Прервать;    КонецЕсли;   КонецЦикла;  КонецЕсли;  // Установим размер шрифта  Компонент.РазмерШрифта = 12;  // Зададим размер картинки  Компонент.Ширина = 100;  Компонент.Высота = 90;  Если ТипКода = Неопределено Тогда   // Разрешим компоненте самой определять тип кода   Компонент.АвтоТип = Истина;   // ИЛИ установим код EAN-13   // Компонент.ТипКода = 1;   //   // Тип смотрим в документации на внешнюю компоненту  Иначе   Компонент.ТипКода = ТипКода;  КонецЕсли;    // Если код содержит контрольный символ, обязательно указываем  Компонент.СодержитКС = СтрДлина(Штрихкод) = 13;  // Если отображать контрольный символ не нужно  // Компонент.ВидимостьКС = Ложь;  // Формируем картинку штрихкода  Компонент.ЗначениеКода = Штрихкод;  // Если установленная нами ширина меньше минимально допустимой для этого штрихкода  Если Компонент.Ширина < Компонент.МинимальнаяШиринаКода Тогда   // Скорректируем ширину   Компонент.Ширина = Компонент.МинимальнаяШиринаКода + 10;  КонецЕсли;  // Сформируем картинку  ДвоичныеДанныеКартинки = Компонент.ПолучитьШтрихкод();  // Если картинка сформировалась  Если НЕ ДвоичныеДанныеКартинки = Неопределено Тогда   // Формируем из двоичных данных   Возврат Новый Картинка(ДвоичныеДанныеКартинки);  КонецЕсли;  Возврат Неопределено; КонецФункции Данная функция возвращает картинку, которую можно выводить в табличный документ печатной формы необходимого объекта. Свойства объекта Компонента можно посмотреть на картинке: Удачи в работе! С.С.С.

Читайте также

Работа с картинками в 1С · Имя документа в 1С 8 (аналог метода 7.7 Вид()) · Отбор по виду документа в запросе · Перебор строк динамического списка в 1С 8