Как создать штрих-код Code 11 из FastReport VCL с помощью Delphi / Lazarus / С++ Builder

12.10.2022

Code 11, также известный как USD-8, представляет собой дискретную символику высокой плотности, которая в основном используется для маркировки телекоммуникационного оборудования.

Символ состоит из следующих элементов:

  • Начальный символ;
  • Символы, представляющие данные;
  • Необязательные цифры контрольной суммы;
  • Символ остановки.

Code-11

Первым и последним элементом каждого символа является полоса. Одномодульный межсимвольный пробел добавляется для отделения символов друг от друга.

Этот символ поддерживает цифры (0–9) и символ дефиса (-). Code 11 получил свое название от этих 11 символов.

Из-за естественной плотности кода 11 дефекты печати могут привести к неправильному считыванию символов сканерами. Чтобы компенсировать это ограничение, Code 11 поддерживает использование одной или двух необязательных цифр контрольной суммы. Для ввода данных, содержащих менее 10 цифровых символов, используется одна цифра контрольной суммы, а для 10 или более цифр используются две цифры контрольной суммы. Первая цифра основана на алгоритме по модулю 11, а вторая основана на алгоритме по модулю 9.

 

Как создать Code 11 из дизайнера FastReport VCL

Добавляем на отчет компонент obCatBarcode и выбираем именно Code 11.

Code-11

 

Далее мы переходим в редактор штрих-кода:

Редактор штрих-кода

Code - область для написания числового значения штрих-кода;

Type of Bar - тип штрих-кода можно изменить сразу в редакторе, не добавляя на отчёт новый компонент;

Calc CheckSum — это контрольная сумма. Это свойство имеется у всех линейных штрих-кодов. Помните про “пропуск считывания”? С этим надо как-то бороться! Свойство определяет, надо ли считать контрольную сумму автоматически. Если оно отключено, контрольная сумма должна присутствовать в тексте объекта;

Zoom - задает масштабирование штрих-кода и используется только вместе со свойством "Авторазмер";

Text - включение/отключение отображения текста под штрих-кодом;

Rotation - позволяет задать поворот объекта на один из фиксированных углов – 0, 90, 180, 270 градусов.

Нажав на значок F(x), вы попадете в большой редактор выражений.

Code-11

Переходим в свойства компонента obCatBarcode.

То, что будет написано в редакторе штрих-кода в поле Code будет перенесено в поле Expression. Если Expression пустое, то отображается текст из поля Text.

Иначе говоря, в Text записывается статический текст, а в Expression содержится вычисляемое выражение, в том числе значение из источника данных.

 

Создаём штрих-код Code 11 из кода Delphi / Lazarus / С++ Builder

uses frxBarcod;
procedure TForm1.Button1Click(Sender: TObject);
var bc: TfrxBarcodeView;
begin
 bc := TfrxBarcodeView(frxReport1.FindObject('BarCode1'));
 {Устанавливаем тип штрихкода}
 bc.BarType := bcCode11;
 {Устанавливаем фиксированное значение штрихкода}
 bc.Text := '123456';
 {Устанавливаем вычисляемое значение штрихкода}
 //bc.Expression := '<YourDatasetName."FieldName1"> + <YourDatasetName."FieldName2">';
 {Устанавливаем, нужно ли подсчитывать контрольную сумму и добавлять её в конец штрихкода}
 bc.CalcCheckSum := False;
 {Устанавливаем масштаб, в котором будет отображаться штрихкод}
 bc.Zoom := 2;
 {Устанавливаем угол поворота штрихкода. Может принимать значения 0, 90, 180, 270}
 bc.Rotation := 0;
 {Устанавливаем, нужно ли устанавливать ширину штрихкода в зависимости от его содержимого.}
 {При значении False Zoom будет принимать такое значение, чтобы ширина штрихкода оставалась фиксированной}
 bc.AutoSize := True;
 {Устанавливаем цвет фона штрихкода}
 bc.Color := clNone;
 {Устанавливаем цвет линий штрихкода}
 bc.ColorBar := clBlack;
 {Устанавливаем, нужно ли отображать текст внизу штрихкода}
 bc.ShowText := True;
 frxReport1.ShowReport();
end;

Богатый функционал FastReport VCL пополнился этим несложным штрих-кодом. Хоть он и не получил широкую популярность из-за своей плотности, тем не менее некоторые наши клиенты с удовольствием используют его в своих отчётах. Подписывайтесь на наши новости, чтобы не пропускать новые статьи о новых особенностях наших продуктов!

20 ноября 2024

Локализация и смена языков в FastReport VCL

FastReport VCL поддерживает 40 языков для локализации интерфейса и позволяет изменять язык на лету через меню или код, без перекомпиляции.
1 ноября 2024

Новые возможности редактора отчетов FastReport VCL

Рассматриваем новые возможности редактора отчетов: выносные линии, подсветка пересекающихся объектов, обновлённые деревья отчетов и данных.
30 октября 2024

Использование стилей при создании отчетов в FastReport VCL

В статье подробно рассматривается одна из новых возможностей FastReport VCL – применение стилей и страниц стилей.