Как создать QR-код в FastReport VCL и с помощью кода Delphi / Lazarus

24.08.2022

Как создать QR-код в FastReport VCL и с помощью кода Delphi / Lazarus

За последние годы QR-коды стали обыденной частью нашей жизни. Они являются двумерным типом штрих-кода, который легко считывается цифровым устройством и хранит информацию в виде серии пикселей. Большое распространение они нашли в торговле, логистике, производстве.

В отличие от штрих-кода, QR-коды читаются в двух направлениях — по горизонтали и по вертикали. Это позволяет хранить в них больше данных. Легкость распознавания и удобство использования QR-кодов предопределило их популярность. С помощью FastReport VCL вы без особых сложностей сможете использовать QR-коды в своих отчетах. Рассмотрим эту возможность подробнее.

Запустите дизайнер генератора отчетов. Во всплывающем меню инструмента “Barcode object” выберите компонент “QRCode”.

Выбор компонента “QRCode”

 

При добавлении на страницу QRCode будет выглядеть следующим образом:

QR-Code в отчёте

 

Двойным кликом по нему откройте редактор 2D штрих-кодов. Это также можно сделать из контекстного меню, выбрав пункт «Редактировать»:

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

 

Так выглядит редактор штрих-кодов:

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

 

Рассмотрим его основные функции более подробно:

1. Во вкладке “General” можно изменить размер штрих-кода, добавить подпись или повернуть его.

2. На вкладке “Other options”:

  • Если CodePage <> 0 - используется ECI режим;
  • В свойстве Encoding можно выбрать кодировку текста;
  • Свойство ErrorLevels обеспечивает избыточность, для корректного чтения данных при частично поврежденном изображении кода;
  • QuietZone определяет наличие белой рамки QR-кода.

3. В редакторе выражений, на строке “Code” можно:

  • Обращаться к полям источника данных;
  • Использовать системные переменные;
  • Применять различные функции.

В свойстве объекта “ExpressionPreset” можно выбрать предустановки для создания квитанций по спецификациям СБЕР кода и Swiss кода:

Выбор предустановок для QR-кода

 

Вы можете сформировать свои QR-коды различных типов, для этого вам необходимо указать строку определенного формата и задать её в свойстве Text.

Рассмотрим эти типы подробнее с примерами штрих-кодов и данных:

URI – это унифицированный идентификатор ресурса. Строка для идентификации различных файлов, документов, изображений, электронной почты, веб-сервиса и др.:

https://быстрыеотчеты.рф/

https://быстрыеотчеты.рф/

 

EmailAddress – адрес электронной почты:

support@fastreport.ru

support@fastreport.ru

 

EmailMessage – текст электронного письма:

MATMSG:TO:support@fast-report.com;SUB:FastReport VCL question;BODY:Hello, I have a question about FastReport VCL.;

MATMSG:TO:support@fast-report.com;SUB:FastReport VCL question;BODY:Hello, I have a question about FastReport VCL.;

 

Geolocation – координаты для определения реального географического местоположения:

geo:-50.737563,-79.490016,120

geo:-50.737563,-79.490016,120

 

SMS – текстовое сообщение:

SMSTO:(71) 555-4444:Hello, Dolly! I'm fine!

 SMSTO:(71) 555-4444:Hello, Dolly! I'm fine!

 

Call –телефонный номер:

tel:(71) 555-4444

tel:(71) 555-4444

 

Wi -fi – информация для подключения к wi – fi сети:

WIFI:T:WPA;S:Honeypot;P:youarewelcome;H:true;

WIFI:T:WPA;S:Honeypot;P:youarewelcome;H:true;

 

Создаём QR-код из кода Delphi/Lazarus:

uses frxBarcode2D;
procedure TForm1.Button1Click(Sender: TObject);
var
 bcQR: TfrxBarcode2DView;
begin
 bcQR := TfrxBarcode2DView(frxReport1.FindObject('Barcode2D1'));
 { Устанавливаем тип штрих-кода }
 bcQR.BarType := bcCodeQR;
 
 { В зависимости от типа, который вы хотите использовать, вам необходимо}
 {оставить одну строку, присваивающую текст определенного формата }
 
 { Если вы хотите установить URL тип: }
 bcQR.Text := 'https://быстрыеотчеты.рф/';
 
 { Если вы хотите установить EmailAddress тип: }
 bcQR.Text := 'support@fastreport.ru';
 
 { Если вы хотите установить EmailMessage тип: }
 bcQR.Text :=
 'MATMSG:TO:support@fast-report.com;SUB:FastReport VCL question;BODY:Hello, I have a question about FastReport VCL.;';
 
 { Если вы хотите установить Geolocation тип: }
 bcQR.Text := 'geo:-50.737563,-79.490016,120';
 
 { Если вы хотите установить SMS тип: }
 bcQR.Text := 'SMSTO:(71) 555-4444:Hello, Dolly! I'' m fine ! ';
 
 { Если вы хотите установить Call тип: }
 bcQR.Text := 'tel:(71) 555-4444';
 
 { Если вы хотите установить Wi-Fi тип: }
 bcQR.Text := 'WIFI:T:WPA;S:Honeypot;P:youarewelcome;H:true;';
 frxReport1.ShowReport();
end;

 

Мы рассмотрели использование QR-кодов в FastReport VCL. Этот компонент расширяет возможности применения данного генератора отчетов в современном документообороте.

VCL Lazarus FastReport Delphi Штрихкод Дизайнер QR код
30 мая 2025

Открываем файлы с расширением FP3 с помощью МоиОтчеты Вьювер

МоиОтчеты Вьювер — идеальное решение для работы с файлами FP3. Он позволяет легко открывать, просматривать, печатать и экспортировать отчёты.
24 апреля 2025

Как открыть и конвертировать файл FP3 с помощью МоиОтчеты Конвертер

Рассказываем о формате FP3, который используется для готовых отчётов в бизнес-приложениях, и о возможности конвертировать такие файлы в различные форматы с помощью МоиОтчеты Конвертер.
21 апреля 2025

Работа с компонентом TfrShellTreeView в FastReport VCL

В данной статье мы рассмотрим компонент TfrShellTreeView. Он предназначен для отображения элементов файловой системы и частично является аналогом компонентов TDirectoryListBox, TDirectoryOutline и TShellTreeView.