CountBarcodeCRC

From SunFlurry wiki
Jump to: navigation, search
  CountBarcodeCRC (Функции штрихкодов)
Объект:Функции общего назначения
Статус разработки: Реализована
Тип:Функция
Обращение к БД:Нет
Исключения:Невозможно превратить в строку, неверный аргумент
Визуальность:Нет

Функция используется для случаев, когда кодируемое сообщение разделено на несколько символов (или штрихкодов), при этом необходима контрольная сумма всего сообщения, чтобы программа декодирования смогла проверить корректность результата. См. статью Generate2DBarcode, параметр SAPPEND.

Синтаксис

CountBarcodeCRC(<Тип контрольной суммы (STRING)>,<Полное кодируемое сообщение (STRING)>):<Контрольная сумма (INT,STRING)>

Аргументы

  • <Тип контрольной суммы (STRING)> - Строка задающая тип контрольной суммы, которую необходимо подсчитать. Доступны следующие значения:
    • QRSACRC -- Подсчет контрольной суммы полного сообщения символа типа QR для разделения данных на несколько символов.
  • <Полное кодируемое сообщение (STRING)> - Аргумент задает полное сообщение (данные) до разделения по символам.

Возвращаемое значение

Функция возвращает необходимую контрольную в виде числа или строки.

Примеры

//Находим общую контрольную сумму сообщения и разбиваем его на два символа
тСтр:="Длинное сообщение, которое требуется разбить на два символа с помощью функции структурного соединения";
аКС:=CountBarcodeCRC("QRSACRC",тСтр);
тСтр1:=Mid(тСтр,1,Length(тСтр) div 2);
тСтр2:=Mid(тСтр,Length(тСтр1)+1);
//Генерация символов
аК:=Generate2DBarcode("QR",-1,-1,тСтр1,"SCALE:5,BPP:32,SAPPEND:1.2."+аКС);
аК2:=Generate2DBarcode("QR",-1,-1,тСтр2,"SCALE:5,BPP:32,SAPPEND:2.2."+аКС);
//Создание большой картинки и добавление на нее сгенерированных ранее символов
aPic:=Picture.Create(аК.Width+аК2.Width+20,Max(аК.Height,аК2.Height),toRGB(255,255,255),32);
aPic.DrawPicture(аК,0,0,аК.Width,аК.Height);
aPic.DrawPicture(аК2,аК.Width+20,0,аК2.Width,аК2.Height);
//Сохранение результата
aPic.Save("c:\file.png","png");