NDemia Новости CashMatic Рубли Форум

Выбор шрифта строки


Выбор шрифта строки поддерживается только на фискальном регистраторе.
Шрифт выбирается по номеру из таблицы шрифтов, прошитой в оборудовании.
Для указания нужного шрифта в первой позиции печатной строки должно быть вставлено макроимя
%(шрифтN) (или %(fontN)), где N - число от 0 до 9 (на самом деле поддерживаемых шрифтов будет скорее всего меньше - определяется конкретной моделью оборудования). Кроме указанных макроимён может использоваться %(штрихКод) (или %(barCode)) - см. Печать штрих-кода (режим печати штрих-кода определяется как разновидность шрифта строки).
Макроимя может использоваться только в исходном тексте шаблона, при его вставке в строчное значение какого-либо подставляемого поля шаблона оно будет просто напечатано и не будет иметь никакого эффекта в плане форматирования.
Если печать будет выполняться на принтере (не на фискальном регистраторе), то указание номера шрифта ни на что не повлияет.
Если выводимая строка будет слишком длинной и при печати будет разбита на несколько строк, указанный в первой позиции шрифт будет применён ко всем частям исходной строки.

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

Пример правильного определения первой печатной позиции:
%{коммент: Комментарий
%}%(шрифт1)Текст, который должен быть напечатан шрифтом №1
в выходном тексте фрагмент "%{коммент: Комментарий...%}" будет удалён, поэтому %(шрифт1) находится действительно на первой печатной позиции строки.

Пример неправильного определения первой печатной позиции:
%{комент: Комментарий
%}%(шрифт1)Текст, который должен быть напечатан шрифтом №1
в выходном тексте фрагмент "%{комент: Комментарий...%}" не будет удалён (как макроблок с неизвестным типом - из-за ошибки в написании), поэтому %(шрифт1) не попадает на первую позицию, и, соответственно, управление шрифтом не срабатывает (см. Формирование текста. Форматирование шрифта.)

Ещё один пример неправильного определения первой печатной позиции:
%{сдача:ВЫДАТЬ СДАЧУ %(сдача) руб.%}%(шрифт1)Текст печати шрифтом №1
при проверке шаблона %(шрифт1) возможно и сработает, но как только возникнет чек со сдачей - произойдёт ошибка форматирования.
тел. +7-(916)-129-26-84 (C)opyright: NDemia Ltd, Москва, 2006..2024 ndemia@ndemia.com