Управление принтером заключается в передаче специальных управляющих команд. Команды используются для изменения шрифта, печати штрих-кода, печати картинки и т.д. Для управления предназначен тег printer
. Выполняемая операция задается атрибутом op
:
-
setfont
– изменение шрифта, resetfont
– сброс установленного шрифта,cut
– отрезка чека,-
barcode
– печать штрих-кода, picture
– печать картинки из памяти принтера,picturefromfile
– печать картинки из файловой системы.
Дополнительные атрибуты для изменения шрифта (setfont)
Наименование | Тип данных | Возможные значения | Описание | Примечания |
---|---|---|---|---|
size | строковый |
| Размер шрифта | Поддерживаемые шрифты зависят от типа используемого устройства. Значение может быть задано в переменной без обрамления знаком "$" |
linespacing | строковый |
| Межстрочный интервал | Функционал поддержан для принтеров, работающих по протоколу Epson (Posbank, Senor). Значение может быть задано в переменной без обрамления знаком "$" |
# изменение шрифта, установка размера "увеличенный" <printer op="setfont" size="enlarge"/> # сброс размера установленного шрифта <printer op="resetfont"/>
# ранее в переменной fontString было задано значение "doublewidth" # изменение шрифта, установка размера из переменной <printer op="setfont" size="fontString"/> # атрибут size примет значение "doublewidth" Если переменная не найдена, то будет использовано ее символьное представление. В этом случае size примет значение равное строке "fontString".
- Фискальный регистратор Пилот FP410K не поддерживает подчеркнутый шрифт (
underlined
) и шрифт двойной высоты (doubleheight
). - СП101 не поддерживает уменьшенный шрифт (
smaller
).
# изменение межстрочного интервала, установка значения "10" <printer op="setfont" linespacing="10"/> # сброс межстрочного интервала, установка значения по умолчанию <printer op="setfont" linespacing="auto"/>
При изменении шрифта или межстрочного интервала изменяется размер области печати, это необходимо учесть при форматировании.
Дополнительные атрибуты печати штрих-кода (barcode)
Наименование | Тип данных | Возможные значения | Описание | Примечания |
---|---|---|---|---|
type | строковый |
| Тип штрих-кода | Зависит от используемого устройства. Атол: только EAN13 и QR. Атол 5.0: EAN8, EAN13, CODE128, INTERLEAVED2OF5, QR. Штрих-М: только EAN13 и QR. Epson: UPCA, EAN13, EAN8, CODE39, INTERLEAVED2OF5, CODE128, QR. Подробнее о поддержке печати QR-кода описано ниже |
width | целочисленный | Атол: от 1 до 4 | Ширина | Зависит от используемого устройства |
height | целочисленный | Атол: не используется | Высота | Зависит от используемого устройства |
barcode | строковый | Штрих-код | Допускает использование параметров | |
showmode | строковый |
| Режим отображения кода | Зависит от типа используемого устройства |
<printer op="barcode" type="EAN13" showmode="SHOW_DOWN" barcode="4792156009926" width="2" height="20"/>
<printer op="barcode" type="QR" barcode="http://rssib.ru"/>
Значение barcode
при печати QR-кода не должно превышать 256 символов в соответствии с руководством по эксплуатации УТМ.
Если принтер не поддерживает печать заданного типа штрих-кода команда пропускается.
Дополнительные атрибуты печати: width="1" height="20" | Дополнительные атрибуты печати: width="2" height="20" |
Печать QR-кода через изображение
Новые модели принтеров, разрабатываемые с 2014 года, поддерживают печать QR-кода. Если принтер не имеет встроенных методов для печати QR-кода, но позволяет печатать изображения, то в кассовом ПО на основании входных данных генерируется изображение QR-кода, которое печатается на чеке.
Скорость печати QR-кода через изображение существенно медленнее и зависит от скорости подключения ФР. Примерные значения:
- при скорости подключения 115200 скорость печати составляет порядка 3 секунд,
- при скорости подключения 9600 скорость печати составляет порядка 11 секунд.
В таблице приведен перечень принтеров, которые не поддерживают печать QR-кода встроенными методами.
Модель принтера | Примечания |
---|---|
Штрих-М | |
ЭЛВЕС-МИНИ-ФР-Ф | |
ФЕЛИКС-Р Ф | |
ШТРИХ-ФР-К v.01 | |
ШТРИХ-950К | |
ЭЛВЕС-ФР-К | |
ШТРИХ-КОМБО-ФР-К | |
Штрих-POS-Ф | |
ШТРИХ-950К v.02 | |
ШТРИХ-КОМБО-ФР-К v.02 | |
ШТРИХ-КИОСК-ФР-К | |
ШТРИХ-М-ФР-К | поддерживается печать QR-кода через изображение |
ШТРИХ-LIGHT-ФР-К | поддерживается печать QR-кода через изображение |
ШТРИХ-500 | поддерживается печать QR-кода через изображение |
NCR-001K | |
SurtPrint BK | |
АСПД ШТРИХ-МИНИ | |
АСПД ШТРИХ | |
АСПД ШТРИХ-950 | |
АСПД ШТРИХ-КОМБО | |
ЭЛВЕС-ПРИНТ | |
ШТРИХ-ФР-Ф v.04 | поддерживается печать QR-кода через изображение |
ШТРИХ-ФР-Ф (Казахстан) | поддерживается печать QR-кода через изображение |
ШТРИХ-ФР-Ф (Белоруссия) | поддерживается печать QR-кода через изображение |
ШТРИХ-МИНИ-ФР-К | поддерживается печать QR-кода через изображение |
ШТРИХ-МИНИ-ФР-К v.02, 57 мм | поддерживается печать QR-кода через изображение |
ШТРИХ-М-ФР-К 57мм | поддерживается печать QR-кода через изображение |
ШТРИХ-LightPOS-K | поддерживается печать QR-кода через изображение |
АСПД ШТРИХ-М | поддерживается печать QR-кода через изображение |
АСПД ШТРИХ-LIGHT | поддерживается печать QR-кода через изображение |
Атол | |
ККТ Триум-Ф | |
ККТ ФЕЛИКС-02К | |
ККТ «Меркурий-140Ф» АТОЛ | |
ККТ Меркурий MS-K | |
ККТ ФЕЛИКС-Р К | |
ККТ ФЕЛИКС-3СК | |
ККТ FPrint-02K | |
ККТ FPrint-03K | |
ККТ FPrint-5200K | поддерживается печать QR-кода через изображение |
ККТ PayVKP-80K | |
ККТ FPrint-88 K | поддерживается печать QR-кода через изображение |
ККТ PayPPU-700K | поддерживается печать QR-кода через изображение |
ККТ PayCTS-2000K | поддерживается печать QR-кода через изображение |
Пилот | |
FP410K (версия прошивки меньше 60) | |
Пирит | |
Пирит ЕНВД | |
Пирит ФР01К | |
Сервис Плюс | |
СП101ФР-К | поддерживается печать QR-кода через изображение |
СП402ФР-К | поддерживается печать QR-кода через изображение |
Дополнительные атрибуты печати картинки из ФР (picture)
Для печати изображения необходимо загрузить его в ФР. Подробнее об этом можно прочитать в статье "Программирование и печать изображений в ФР".
Наименование | Тип данных | Возможные значения | Описание |
---|---|---|---|
number | целочисленный | 1..255 | Номер печатаемой картинки из внутреннего массива картинок |
offset | целочисленный | 0..65535 | Смещение картинки в пикселях |
startline | целочисленный | 1…200 | Начальная линия |
endline | целочисленный | 1…200 | Конечная линия |
type | целочисленный |
| Тип графики:
Расширенный тип графики не поддержан на ФР Штрих. |
<printer op="picture" number="1" offset="0" startline="1" endline="200" type="2" />
Для печати второго и последующих изображений после чека необходимо создать новый отчет *.xml
в директории /linuxcash/cash/reports/
, который содержит информацию об изображении:
<report name = "test" type="document" cached="true" > <printer op="picture" number="1" offset="0" startline="210" endline="722" type="2" /> <printer op="cut" /> </report>
*.xml
.В результате на чековой ленте будет напечатано изображение с данными чека. Пример печати изображения:
Дополнительные атрибуты печати картинки из файловой системы (picturefromfile)
Функционал поддержан только для ФР Атол версии 5.0.
Для печати изображения необходимо указать прямой путь до изображения в файловой системе. Подробнее об этом можно прочитать в статье "Программирование и печать изображений в ФР".
Наименование | Тип данных | Возможные значения | Описание |
---|---|---|---|
filepath | строковый | Прямой путь до изображения в файловой системе | |
align | целочисленный |
| Выравнивание изображения по горизонтали:
|
<printer op="picturefromfile" filepath="/root/template.bmp" align="1"/>
Отрезка чека (cut)
Атрибут cut
используется для отрезки чека.
<printer op="cut" />