Шрифты и печать русских текстов на принтер Zebra

Категории:  Архив
Последние изменения: 13.08.2019

Не всегда существуют русские шрифты для конкретной модели принтера, а существующие могут не подходить по размеру. В таком случае можно воспользоваться альтернативным вариантом с помощью печати текста как изображения.

Это устаревшая статья о печати, см. новый раздел по печати и шаблонам этикеток.

Для вывода русских текстов на CPCL в Mobile SMARTS добавлена возможность вставки в этикету кода, который преобразует текст в картинку. Для этого необходимо открыть этикетку в простом текстовом редакторе и написать следующее:

{global::Zebra.CPCL.Text([<название шрифта>, <высота шрифта в миллиметрах>,] [, ,] <текст>, <доступная ширина>)}

Координаты <x>, <y> задаются в единицах, которые в данный момент выбраны текущими (см. руководство по CPCL).

Метод global::Zebra.CPCL.Text возвращает команду UG и соответствующую картинку. Из шрифтов доступны «Tahoma» и «Courier New».

Например:

{global::Zebra.CPCL.Text("Tahoma", 3, 0, 26, "Русский текст", 360)} {global::Zebra.CPCL.Text("Tahoma", 3, "Русский текст", 360)} 


Также можно координаты текста пропускать, и указывать следующее:

[CPCL]
! 0 200 200 290 1
PAGE-WIDTH 390 ; SetFont(<название шрифта>, <высота в шрифта миллиметрах>). {global::Zebra.CPCL.SetFont("Tahoma", 4)} {global::Zebra.CPCL.Text("Русский текст", 360)} {global::Zebra.CPCL.Text("Ещё текст", 360)}
{global::Zebra.CPCL.Text("Tahoma", 1.7, "мелкий текст", 360)}
{global::Zebra.CPCL.Text("Tahoma", 1.7, "мелкий текст", 360)}
{global::Zebra.CPCL.Text("Tahoma", 1.7, "мелкий текст", 360)}
{global::Zebra.CPCL.Text("Tahoma", 1.7, "мелкий текст", 360)}
; SetLP(<отступ до> [, отступ после]) в миллиметрах.
{global::Zebra.CPCL.SetLP(10, 0)}
{global::Zebra.CPCL.Text("Tahoma", 1.7, "мелкий текст с отступом 10 мм", 360)}
POSTFEED 20
PRINT

Итог:

 

Параметры, для которых указано «в миллиметрах», работают правильно только при разрешении 200dpi, т.е. только если этикетка начинается на «! X 200 200 ..»

Важное замечание: код global::Zebra не является расширением языка печати и совершенно ничего не знает о том, что мы там пишем на CPCL. То есть вызовы SetLP, выравнивания текста Left|Right/CenterAlign и прочие вещи никак не связаны с SETLP, LEFT/RIGHT/CENTER и прочим в языке CPCL, т.е. одно о другом ничего не знает и друг на друга они не влияют.

Еще одно важное замечание: прямые ("), косые (“) и русские («) кавычки — фактически являются различными символами и не взаимозаменяемы! В качестве "кавычек" для обрамления строк в вызовах Zebra.CPCL следует использовать только прямые (") кавычки. За этим следует следить отдельно, т.к. такую ошибку легко пропустить. 


Была ли статья полезна?
Спасибо за ваш отзыв!
Отзыв
Заполните, пожалуйста, данную форму, что конкретно вы не нашли, оставьте свои комментарии о работе сайта / полезности / сложности с навигацией
0/500