ZPL — язык, на котором разговаривают зебры

ZPL расшифровывается как Zebra Programming Language, и предназначен для принтеров термоэтикеток. По самому языку выпущено несколько талмудов в pdf формате, но если их использовать как справочники, то можно сделать и что-нибудь полезное.

Например:

Этикетка размером 100×100 мм, без штрихкода, печатаем температурный признак: Хитрость в том, что символа градуса нет на родном ASCII, поэтому мы используем маленькую букву «о» и печатаем её отдельным полем на той же примерной высоте, что и текст большим шрифтом.

^XA
^CF0,100,100
^FO0,180
^FD+2 +8  C^FS
^A@N,50,50,B:TIMES.FNT
^FO345,170
^FDo^FS
^XZ

^XA В данному случае это команда принтеру «Начало новой этикетки»

^CFx, INT, INT устанавливают шрифт и его размер

^FOx,y значат «создать текстовое поле (в данном примере отступ составит 0 точек по оси X, и 180 по оси Y)»

^FDsome_text^FS -Само поле, содержащее текст

^A@N,50,50,B:TIMES.FNT — Повторная смена шрифта

^XZ — Признак окончания этикетки

Примерно тоже самое, но другой текст и другой цвет этикетки:

^XA
^CF0,90,90
^FO0,180
^FD+8 +15  C^FS
^A@N,50,50,B:TIMES.FNT
^FO350,170
^FDo^FS
^XZ

Что касается штрихкодов — не намного сложнее.

^XA
^FO25,0
^BY2
^BCN,48,N
^FD07718134706^FS
^FO95,53
^CF0,35,N
^FD07718134706^FS
^XZ

Все тоже самое, но появляется команда ^BCN — и указывает Зебре печатать следующее текстовое поле штрихкодом (а так же тип и высоту штрихкода — длину указать нельзя, она вычисляется в зависимости от данных в соответствии со стандартом). Вот пример получившейся этикетки (размер 46х11 мм):

 

И еще необходимо иметь в виду, что зебры чувствительны к символам перевода строк, пробелам и т.п.. И если где-то что то упустить, то результат будет абсолютно непредсказуемым (

 

Последнее изменение:


Крипто-кошельки для помощи и благодарности проекту:

Bitcoin адрес проекта: [[address]]

Перевод на сумму [[value]] BTC получен. Спасибо!.
[[error]]

Ethereum адрес проекта: [[address]]



Комментарии
Пожалуйста, авторизуйтесь, что бы оставить свой комментарий