В руководстве по программированию zpl

Время на прочтение
5 мин

Количество просмотров 66K

Добрый день, Хабрахабр.

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

Зебры они такие
Механизм формирования этикеток выглядит следующим образом: сначала с машины пользователя (компьютер, терминал сбора данных) на принтер отправляется специальным образом оформленная строка, затем внутренний процессор принтера обрабатывает эту строку, и выводит ее на печать.Но язык, на котором формируется строка для принтера (называется ZPL) на первый взгляд вызывает у непосвящённых нервную икоту и мандраж.
Прошу под кат, всех кто хочет разобраться в данном вопросе.

Пример:

^XA
^FO 0,10
^GB632,0,2^FS
^FO0,25
^FB632,1,0,C,0
^ASN,70,70
^FDWAR INC.^FS
^FO0,100
^GB632,0,2^FS
^FO0,120
^FB632,1,0,C,0
^ASN,60,60
^FDGoose^FS
^FO0,180
^FB632,1,0,C,0
^ASN,60,60
^FDWild^FS
^FO0,240
^GB632,0,2^FS
^FO120,260
^BY2
^BCN,70,N,N,N
^FDSECRECTCODE^FS - 
^XZ

А на печать выводится такой аккуратный бейджик:

Давайте разберемся, что же написано в этом коде, и рассмотрим основные элементы.
Первую часть своего выступления я посвящу разбору синтаксиса этого языка, в объеме достаточном для создания этикеток удовлетворительного качества. Во-второй части, приведу примеры кода на Java и VisualBasic, для того, чтобы отправить этикетку на печать самостоятельно. На основе этих примеров, вы сможете самостоятельно построить свою програму, для печати.

Часть 1. Синтаксис ZPL

Во первых, все измерения в ZPL указываются в точках (points). Поэтому, для более ясного представления вы должны посмотреть в документации на принтер, какая у вас плотность точек на единицу измерения длины.
Сначала кратко пробежимся по основным командам, затем рассмотрим их более подробно в связке.
1. Начало и конец ZPL-кода:
^XA – начало кода, ^XZ – конец кода;

2.Отступы для последующего содержимого:
^FO x,y где: x – отступ от левого края, y – отступ сверху;

3.Разделитель полей:
^FS — обозначает конец определения поля. Буквально можно считать его сигналом конца строки;

4.Масштабируемый текст. Состоит из двух частей, выбор шрифта и ввод текста:
4.1. Выбор шрифта:
^A<название шрифта><ориентация текста>,<высота шрифта в точках>,<ширина в точках>:
<название шрифта> – по-умолчанию стоит A. Точнее ее даже не надо вводить, другие шрифты можно взять из официальной документации:

<ориентация текста>:
N – нормальная ориентация; R – повернуто на 90 градусов по часовой стрелке;
I – перевернуто на 180 градусов; B – повернуто на 270 градусов;

4.2. Вывод текста с параметрами указанными в предыдущем пункте:
^FD<текст>

Примеры:

^XA
^FO20,20  - отступ по 20 точек от верхнего и левого края этикетки
^ASN,70,70 - нормальная ориентация, шрифт S, высота и ширина 70 точек
^FDWAR INC.^FS – содержание текста WAR INC.
^XZ

Повернем, и изменим шрифт:

^XA
^FO20,20  - отступ по 20 точек от верхнего и левого края этикетки
^ABB,30,30 - повернуто на 270 градусов, шрифт B, высота и ширина 30 точек
^FDWAR INC.^FS – содержание текста WAR INC.
^XZ

Изменим шрифт на S:

^XA
^FO20,20  - отступ по 20 точек от верхнего и левого края этикетки
^ASB,30,30 - повернуто на 270 градусов, шрифт S, высота и ширина 30 точек 
^FDWAR INC.^FS – содержание текста WAR INC.
^XZ

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

5.Блок текста:

^FB<ширина>,<количество строк>,<пробелы между строками>,<выравнивание текста>,< отступ для второй или последующей строки>
<положение текста> — может принимать значения: L(по левому краю), R (по правому краю), C (по центру), J (растянуть текст по ширине поля);
Обычно я использовал данную команду для центрирования текста, или если необходимо разместить текст в несколько строчек. Если текст не умещается в строку, он начинает накладываться сам на себя. И получается так:

^XA
^FO 20,20
^FB400,1,0,C,0
^AVN,70,70
^FDWAR INC WILD GOOSE^FS
^XZ

Изменим код, чтобы было две строки, и расстояние между строчками сделаем в 10 точек:

^XA
^FO 20,20
^FB400,2,10,C,0
^AVN,70,70
^FDWAR INC WILD GOOSE^FS
^XZ

А теперь сделаем отступ для второй строки в 30 точек влево:

^XA
^FO 20,20
^FB400,2,10,L,30
^AVN,70,70
^FDWAR INC WILD GOOSE^FS
^XZ

6. Рисование прямоугольников:

^GB<ширина>,<высота>,<толщина линии>, (<цвет линии>, <скругление углов>)
В скобках указаны не обязательные параметры.
Цвет линии: B (черный) или W (белый)
Скругление углов указывается цифрой от 0, до 8 (сильное скругление)
Примеры:
С сильным скруглением:

^XA
^FO20,20 
^GB300,100,2,B,8^FS
^XZ

Без скругления:

^XA
^FO20,20 
^GB300,100,2^FS
^XZ

Если хотим нарисовать просто линию, то рисуем прямоугольник с высотой равной 0:

^XA
^FO20,20 
^GB300,0,2^FS
^XZ

7.Штрихкод состоит из трех команд – первая задает его размеры, вторая настройки и третья — содержание:

7.1.Размеры штрихкода:
^BY<ширина>, (<cоотношение толщин линий>, <высота штрихкода>)

7.2. Настройки штрихкода:
^BC<ориентация>,<высота штрихкода в точках>, <печатать ли расшифровку кода>, <расшифровка кода над штрихкодом>, <режим>
<ориентация> — N – нормальная ориентация; R – повернуто на 90 градусов по часовой стрелке; I – перевернуто на 180 градусов; B – повернуто на 270 градусов;
<печатать ли расшифровку кода>, <расшифровка кода над штрихкодом> — принимают значения Y (да) или N (нет);
<режим> — с этим полем я не разобрался, по умолчанию N;

^BC – штрихкод в стандарте 128 (подробнее Code_128); Есть также еще несколько форматов, но ввиду того, что мне не приходилось ими пользоваться, в данной статье они рассматриваться не будут, и рекомендую посмотреть информацию по ним в официальной документации поставляемой к принтерам Zebra;

7.3. Вывод штрихкода на печать:
^FD<кодируемая информация>

К сожалению, штрихкод нельзя поместить в «коробку», как текст, чтобы отцентрировать по ширине этикетки, и поэтому приходится шаманить с полями и отступами.

Примеры:

^XA
^FO 20,20
^BY3
^BCN,100,Y,N,N 
^FD123456789^FS 
^XZ

Перевернем, и укажем печатать расшифровку сверху (сейчас получилось снизу):

^XA
^FO 20,20
^BY3
^BCI,100,Y,Y,N 
^FD123456789^FS 
^XZ

На этом остановимся на рассмотрении основных элементов ZPL, и перейдем к части второй, в которой вкратце рассмотрим механизм отправки информации на принтер.

Часть 2. Печать

Механизм передачи проще некуда. Для этого, мы должны знать IP, где находится принтер, и порт. Далее, формируем поток, который отправляем по указанному адресу, и получаем на выходе этикетку.
Пример на Visual Basic:

Dim i As Double
        Dim SSCC As String
        Dim ipAddress As String = "127.0.0.1"
        Dim port As Integer = 1234
        Dim ZPLString As String
      
        Try
         'Открываем соединение
        Dim client As New System.Net.Sockets.TcpClient    
        client.Connect(ipAddress, port)
        Dim writer As New System.IO.StreamWriter(client.GetStream())
       'Формируем ZPL-строку         
        ZPLString=  
        "^XA" &
	"^BY2" & 
	"^FO0,200" &
	"^FB632,2,0,C,0" &
	"^ASN,60,60" &
	"^FDHELLO HABRAHABR!!!^FS" &
	"^XZ"

      writer.Write(ZPLString)
      writer.Flush()
      'закрываем соединение
      writer.Close()
      client.Close()

Catch ex As Exception
End Try  
 

Пример на Java:

import java.io.IOException;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.Socket;

public class PrintToZebra {

	public static void main(String[] args) throws IOException {
		System.out.println("Готовлю к печати");
		try(Socket s = new Socket("127.0.0.1", 1234)){
		OutputStream out = s.getOutputStream();
		PrintWriter writer = new PrintWriter(out, true);
	      String ZPLString=  
	                "^XA" +
	                "^BY2" +              
	                "^FO0,200" +
	                "^FB632,2,0,C,0" +
	                "^ASN,60,60" +
	                "^FDHELLO HABRAHABR!!!^FS" +
	                "^XZ";
	        writer.println(ZPLString);
	        writer.flush();
	        System.out.println("Отправил на печать");
		}
	}
}

Как видите, ничего сложного. Надеюсь, что моя статья, облегчит путь отважным укротителям Зебр.
Засим позвольте откланяться. Жду советов, критики и поддержки.

Содержание

Введение
Простейший пример
Реальный пример
XA
PW
CI
RW
RS
RB
RF
FD
FN
HV
Python скрипты для печати ZPL
Похожие статьи

Введение

Zebra Programming Language это более новая версия Eltron Programming Language

В 1998 году компании Zebra и Eltron объединились

ZPL FAQ

Описание команд на официальном сайте Zebra:

ZPL
.

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

FT Examples available here

,
A Examples available here

Простейший пример

^XA
^LH30,
100
^FO20,10
^AD^FDWWW.AskQA.RU^FS
^FO20,
60^B3^FDWWW.URN.SU^FS
^XZ

Пояснения

^XA — Начало этикетки

^LH30,
100 — Задаёт начальную позицию 30 точек вправо и 100
точек вниз

^FO20,
10 — Field Origin, отступает ещё на 20 точек вправо и 10 вниз от точки,
которую мы определили предыдущей командой.

^A — Определяет шрифт.

В нашем случае ^AD выбран шрифт
D. По умолчанию стоит A. Шрифты, которые
соответсвуют этим буквам хранятся в EPROM принтера. ZPL II разрешает использовать буквы
A — Z и цифры 1 — 9.

^FD — Field Data, объявляет начало поля с данными

WWW.AskQA.RU — обычные данные которые я ввёл. Они будут просто напечатаны на теге.

^FS — Field Separator

^FO20,
60 — Отступаем по-прежнему 20 точек вправо, но теперь, чтобы
надписи не наложились друг на друга — 60 точек вниз.

^B3 — Этой командой мы показываем, что хотим распечатать баркод в формате
Code 39 (USD-3 Code, Code 3 of 9).

^FDWWW.URN.SU^FS — здесь всё как в предыдущем примере, но мы помним,
что теперь данные из поля будут не только распечатаны, но и изображены в виде баркода.

^XZ — Обозначает конец этикетки.

Результат

Наглядное изображение результата печати zpl кода

Пример файла для печати

На каждый параметр можно кликнуть чтобы перейти к подробному описанию. Любо просто пролистать вниз.


^XA

^PW366
^CI28
^RW24,24,A2
^FS
^RS8,B10,200,3,E
^FS
^RB96,8,3,3,24,20,38
^FS
^RFW,E
^FD48,0,5,6438092,0,#Serial#
^FS
^FN3^RFR,H
^FS
^HV3
^FT8,24^A0N,26,26^FD#ProductCode#
^FS
^FO8,36^A0N,26,26^FB300,10,,100^FD#ProductName#
^FS
^FT8,105^A0N,26,26^FD#Quantity#
^FS
^FT130,105^A0N,26,26^FD#UnitOfQuantity#
^FS
^FT8,128^A0N,26,26^FDASK.QA
^FS
^FT134,128^A0N,26,26^FD#Serial#
^FS
^XZ

Пояснения

1) Параметры, помещённые между символами решётки # — это переменные, которые
передаются с сервера. Для печати статичного изображения они не нужны, но на практике
теги печатаются большими сериями и серийный номер меняется автоматически.

#Serial#

2)

🔝

^XA

^PW366

Print Width

^CI28

Change International Font

^RW24,
23,
A2

Read and Write Power Levels

24 — Read Power
24 — Write Power
A2 — (a) — RFID antenna element selection. Note — This parameter
is valid only on the R110Xi4 printer. This parameter selects an antenna element from the
printer’s antenna array.

Допустимые значения: A1, A2, A3, A4, B1, B2, B3, B4, C1, C2, C3, C4, D2, D3, D4, E2,
E3, E4, F2, F3, F4 (combinations D1, E1 and F1 are invalid)

A1 — это нижний (ближний если смотреть на принтер) левый угол. F4 — верхний (дальний)
правый угол.

Чтобы узнать правильное положение антенны и бэкфида, нужно выполнить
RFID калибровку

🔝

^RS
8,
B10,
200,
3,
E
^FS

^RS — Задаёт RFID параметры

8 — (t) tag type тип тега. Gen 2 это единственный тип, поддерживаемый
Zebra R110Xi4, RZ400, RZ600 и RP4T принтерами.

UHF Принтеры

Допустимые значения: 0 = None
1 = EPC Class 0

2 = EPC Class 0 Plus

3 = EPC Class 1 64-bit

4 = EPC Class 1 96-bit

5 = UCODE EPC 1.19

6 = Impinj Class 0 Plus

7 = ISO 18000-06A

8 = EPC Class 1, Generation 2 (Gen 2)

9 = ISO 18000-06B

Значение по умолчанию: 4

Because some countries restric the frequencies that can be used for RFID, not all
tag types listed may be supported by your RFID printer. If you specify a tag type
that is not supported, the printer will use the Значение по умолчанию.

B10 — (p) Sets the read/write position
of the transponder in the
vertical (Y axis) in dot rows from the top of the label. Set to 0 (no movement)
if the transponder is already in the effective area without moving the media.

This parameter sets the read/write position of the transponder in one of two ways:
absolute mode or relative mode. For more information about these modes,
see Setting the Programming Position Manually on page 19 of RFID Programming Guide 2 Manual.

Important: If a label format specifies a value for the programming position, this value will
be used for the programming position for all labels untill a new position is specified or
until the transponder calibration procedure is run.

Допустимые значения:

Absolute Mode:

xxxx = 0 to label lenght (in dot rows). Move the media to the specified position xxxx on
the label, measured in dot rows from the label top, before encoding. Set to 0 (no movement)
if the transponder is already in the effective area without moving the media.

Relative Mode Forward:

Fxxx = F0 to Fxxx (where xxx is the label length in millimeters or 999), whichever is less).
Move media forward, printing bitmap, for xxx millimeters before reading or encoding.

Relative Mode Backward:

Byy = B0 to B30 (in millimeters, 30 mm maximum). Move media backward for yy millimeters before
reading or encoding. (Does not apply to the RP4T printer.)

Note: When using a backward program position, allow enough media or liner to ensure that the printer
can back up the media wihout the leading edge disappearing under the printhead mechanism.

Значение по умолчанию:

F0 (which moves the leading edge of the label to the print line)

200 — (v) — length of void printout — не рекомендуется использовать
0, т.к. испорченный тэг в таком случае сложнее заметить. Если оставить
поле пустым ,, длина void будет равняться длине label

3 — (n) — number of labels — The number of labels that will
be attempted in case of read/encode failure. Допустимые значения: 1 to 10. Значение по умолчанию: 3

E — (e) — error handling —
If an error persists after the specified number of labels are tried, perform this error handling
action. Допустимые значения: N = No action (printer drops the label format causing the
error and moves to the next queued label). P = Place printer in Pause mode
(label format stays in the queue until the user cancels). E = Place printer
in Error mode (label format stays in the queue until the user cancels). Значение по умолчанию: N

🔝

^RB96,
8,3,3,24,20,38

^RB — Define EPC Data Structure

96
— (n) total bit size of the field. Допустимые значения: 1 to n,
where n is the bit size of the tag. Значение по умолчанию: 96

8,3,3,24,20,38 (p1 … p15) — partition sizes — Specify each
partition size. These must add up to the total bit size. Допустимые значения: 1 to 64 bit
total bit size. Значение по умолчанию: 1.

Таким образом мы показали, что 96 бита раделены на шесть полей содержащих 8, 3, 3, 24, 20, 38

Разделение на поля происходит, естественно, не произвольным образом. В данном примере
идёт печать тега в соответствии со стандартом SGTIN-96.

96 — длина EPC блока. 8 — Header. 3 — Filter. 3 — Partition. 24 — Company Prefix. 20 —
Indicator / Item Reference. 38 — Serial Number.

🔝

^RFW,
E

^RF — Read or Write RFID Format.

W — (o) — operation — The action to be performed. Accepted
values: W = write to the tag. L = write with LOCK (if supported by tag type).
R = read the tag. Значение по умолчанию: W.

E — (t) — type — Допустимые значения: A = ASCII, H = Hexadecimal,
E = EPC (ensure proper setup with the ^RB command). Значение по умолчанию: H.

🔝

^FD

48,0,5,6438092,0,#Serial#

Что означают параметры 48,0,5,6438092,0,#Serial# после
^FD с первого взгляда непонятно. В описании у ^FD всего один параметр

(a) — data to be printed. Допустимые значения: any ASCII string up to 3072
characters

Значение по умолчанию: none — a string of characters must be entered.

Объяснение:

^FD у нас идёт не один, а в связке с ^RFW,
E и определённым перед ним ^RB96,
8,3,3,24,20,38

То есть нужно рассматривать всю комбинацию команд.

^RB96,8,3,3,24,20,38
^RFW,E^FD48,0,5,6438092,0,#Serial#

И при этом не забывать, что мы записываем теги в соответствии со стандартом
SGTIN-96

Название поля→
Общая длина
Header Filter Partition Company Prefix Indicator / Item Reference Серийный номер
Длина в битах → 96 8 3 3 24 20 38

Что мы туда записываем → N/A 48 0 5 6438092 0 #Serial#

🔝

^FN3
^RFR,
H^FS

^FN — Field Number
Description the
^FN command numbers the data fields. This command is
used in both ^DF (Store Format) and ^XF
(Recall Format) commands.

In a stored format, use the ^FN command where you would
normally use the ^FD (Field Data) command. In recalling
the stored fromat, use ^FN in conjunction with the
^FD command.

Format ^FN#

Parameters Details
#
= number to be assigned to the field.

Допустимые значения: 0 to 9999
Значение по умолчанию: 0
«a» = optional parameter* Values: 255 alphanumeric characters maximum (a-z, A-Z,1-9 and space)

Default: optional parameter

Comments
The same ^FN value can be stored with several different fields.
If a label format contains a field with ^FN and ^FD, the
data in that field prints for any other field containing the same ^FN value

For the «a» parameter to function as a prompt the characters used in the
«a» parameter must be surrounded by double quotes (see example).

Example: The ^FN1«Name»
would result in «Name» being used as the prompt on the
KDU unit.

3 — Это номер блока памяти в самом принтере. Мы можем
записывать данные в один из 10 000 блоков и затем вызывать из них данные обратно.

В нашем примере, вместо 3 могло стоять любое число.
Главное потом указать тот же блок памяти в команде ^HV

^RF — Read or Write RFID Format.

R — значит, что мы читаем тег.

This command allows you to read or write to an RFID tag.

Note: When using this command to read a tag, you may use a field variable to
print the tag data on the label or to return the data to the host.

Printers That Support This Command: RXi, R110PAX4

Format ^RFo,
t, b

o = operation — The action to be performed.
Допустимые значения: W = write to the tag, L = write with LOCK (if supported by tag type),
R = read the tag

Значение по умолчанию: W

t = type — Допустимые значения: A = ASCII, H = Hexadecimal,
E = EPC (ensure proper setup with the ^RB command)

Значение по умолчанию: H

b = starting block number — Допустимые значения:
0 to n, where n is the maximum number of blocks for the tag.

Значение по умолчанию: 0

🔝

^HV3

^HV — Host Verification

Description — This command is used to return data from specified fields, along with an
optional ASCII header, to the host computer. The command can be used with any field that
has been assigned a number with the ^RT command or the ^FN and
^RF commands.

Format ^HV#,n,
h

# = field number specified with another command. The value
assigned to this parameter should be the same as the one used in another command.

Допустимые значения: 0 to 9999
Значение по умолчанию: 0

В предыдущей команде (^FN3) у нас было значение 3.
Поэтому и здесь у нас 3 (^HV3). Т.е. мы отсылаем обратно
на сервер, то, что прочитали до этого с помощью ^RF

n = number of bytes to be returned

Допустимые значения: 1 to 256
Значение по умолчанию: 64

h = header — Header (in uppercase ASCII characters) to be returned with
the data.

Acceptable values: 0 to 3072 characters
Значение по умолчанию: no header

🔝

^FT8
,24^A0N,26,26^FD#ProductCode#

^FT — Field Typeset

The ^FT command sets the field position, relative to the home position of
the label designated by the ^LH. The typesetting origin of the field is fixed
with respect to the contents of the field and does not change with rotation.

Note: The ^FT command is capable of concantination of fields.

Format: ^FTx,y,
z

Parameters Details
x = x-axis location (in dots) Values: 0 to 32000
Default: position after last formatted text field
y = y-axis location (in dots) Values: 0 to 32000
Default: position after last formatted text field
z = justification

The z parameter is only supported in firmware
version V60.14.x, V50.14.x, or later

Values:
0 = left justification
1 = right justification
2 = auto justification (script dependent)

Default: last accepted ^FW value or
^FW default

The auto justification option may cause unexpected results if variable
fields or bidirectional text are used with ^FT.
For best results with bidirectional text and/or variable
fields, use either the left or right justification options.

^FT8,
24^A
0N,
26,
26^FD#ProductCode#

^FT8,24

8 — отступ слева
24 — отступ сверху
Field Typeset

Description The ^FT command also sets the field position, relative to the home position of the label designated by the ^LH command.
The typesetting origin of the field is fixed with respect to the contents of the field and does not change with rotation.

Format ^FTx,y

Parameters Details
x = x-axis location (in dots) Допустимые значения: 0 to 32000

Значение по умолчанию: positiono after last formatted text field
y = y-axis location (in dots) Допустимые значения: 0 to 32000
Значение по умолчанию: position after last formatted text field

Text The origin is at the start of the character string, at the baseline of the font. Normally the baseline is the bottom of most characters,
except for those with descenders, such as g, y et cetera.

Bar Codes The origin is at the base of the bar code, even when an interpretation is present below the bar code, or if the bar code has guard bars.

Graphic Boxes The origin is at the bottom-left corener of the box.

Images The origin is at the bottom-left corner of the rectangular image area.

Examples available here

When a coordinate is missing, the position following the last formatted field is assumed. This
remembering simplifies field positioning with respect to other fields. Once
the firest field is positioned, other fields follow automatically.

There are several instances where using the ^FT command without specifying x and y parameters is not
recommended:

  • when positioning the first field in a label format
  • at any time with the ^FN (Field Number) command
  • following an ^SN (Serialization Data) command

^A0N,26,26^FD#ProductCode#

^A — Определяет шрифт.

В нашем случае ^A0 выбран шрифт 0 — parameter (f) — font name. По умолчанию стоит A. Шрифты, которые соответсвуют этим буквам хранятся в EPROM принтера.
ZPL II разрешает использовать буквы A — Z и цифры 1 — 9.

N — parameter o = font orientation. Допустимые значения: N = normal, R = rotated 90 degrees (clockwise),
I = Inverted 180 degrees, B = read from bottom up, 270 degrees
Значение по умолчанию: the last accepted ^FW value or the ^FW default

26,26 — это
высота (h) и ширина (w),
заданные в точках.
Examples available here

^FS

^FO8,36^A0N,26,26
^FB300,10,,100^FD#ProductName#

^FO8,
36 — Field Origin,
отступает ещё на 8 точек вправо и 36 вниз от точки,
которую мы определили командой ^LH (а точнее не определили).

^FB300,10,
,100

^FB — Field Block

Description The ^FB command allows you to print text into a
defined block type format. This command formats an ^FD
or ^SN string into a block of text using the origin, font,
and rotation specified for the text string. The ^FB command
also contains an automatic word-wrap function.

Format ^FBa,b,
c,d,
e

Параметры Подробности

a = width of text block line (in dots)

Допустимые значения: 0 to the width of the label (or 9999)
Значение по умолчанию: 0
If this value is less than font width or not specified, text does not print

b = maximum number of lines in text block Допустимые значения: 1 to 9999
Значение по умолчанию: 1
Text exceeding the maximum number of lines overwrites the last line.
Changing the font size automatically increases or
decreases the size of the block
c = add or delete space between lines (in dots) Допустимые значения: -9999 to 9999
Значение по умолчанию: 0
Numbers are considered to be positive unless preceded by a minus sign.
Positive values add space, negative values delete space.
d = text justification Допустимые значения: L (left),
C (center), R (right), J (justified)
Значение по умолчанию: L
Last line is left-justified if J is used
e = hanging indent (in dots) of the second and remaining lines Допустимые значения: 0 to 9999
Значение по умолчанию: 0

^FS
^FT8,105^A0N,26,26^FD#Quantity#^FS
^FT130,105^A0N,26,26^FD#UnitOfQuantity#^FS
^FT8,128^A0N,26,26^FDASK.QA^FS
^FT9,128^A0N,26,26^FDASK.QA^FS
^FT134,128^A0N,26,26^FD#Serial#^FS
^FT134,128^A0N,26,26^FD#Serial#^FS
^XZ

Основные команды

RFID калибровка

^XA
^HR
^XZ


start

position=B9 MM,A2,25,25

leading edge

B20, , ,A2,29,29

B19, , ,A2,29,29

B18,R, ,A2,29,29

B17, , ,A2,29,29

B16, , ,A2,29,29

B15,R,W,A2,17,21

B14,R,W,A2,11,15

B13,R,W,A2,7,11

B12,R,W,A2,5,9

B11,R,W,A2,5,7

B10,R,W,A2,5,9

B9,R,W,A2,5,11<—**** B9 MM,A2,25,25

B8,R,W,A2,11,15

B7,R,W,A2,23,23

B6, , ,A2,29,29

B5,R,W,A2,25,25

B4,R,W,A2,25,25

B3,R,W,A2,27,29

B2, , ,A2,29,29

trailing edge

end

Предпросмотр ZPL

ZPL симулятор для просмотра layout файлов

Создание штрихкодов

sscc-18

^FO250,50

^BY3,3,10

^BCN,110,N,N,N,N

^FD{SERIAL}^FS

^BY
3,3,10

^BY — Bar Code Field Default

The ^BY command is used to change the Значение по умолчаниюs for the module width (in dots),
the wide bar
to narrow bar width ratio and the bar code height (in dots). It can be used as often
as necessary within a label format.

Format: ^BYw
,r,h

Parameters Details
w = module width (in
dots)

Values: 1 to 10
Initial Value at Power Up: 2

r = wide bar to
narrow bar width
ratio

Values: 2.0 to 3.0, in 0.1 increments
This parameter has no effect on fixed-ratio bar codes.
Default: 3.0

h = bar code height
(in dots)

Initial Value at Power Up: 10

For parameter r, the actual ratio generated is a function
of the number of dots in parameter w,
module width. See Table 12 on page 126. Module width and height
(w and h) can be changed at
anytime with the ^BY command, regardless of the symbology selected.

Example: Set module width (w)
to 9 and the ratio (r) to 2.4. The width of the narrow bar is 9 dots
wide and the wide bar is 9 by 2.4, or 21.6 dots. However, since the printer rounds out to the nearest
dot, the wide bar is actually printed at 22 dots. This produces a bar code with a ratio of 2.44 (22
divided by 9). This ratio is as close to 2.4 as possible, since only full dots are printed.

^BCN
,110,N
,N
,N, N

The ^BC command creates the Code 128 bar code, a high-density,
variable length, continuous,
alphanumeric symbology. It was designed for complexly encoded product identification.

Code 128 has three subsets of characters. There are 106 encoded printing characters in each set,
and each character can have up to three different meanings, depending on the character subset
being used. Each Code 128 character consists of six elements: three bars and three spaces.

^BC supports a fixed print ratio.
Field data (^FD) is limited to the width (or length, if rotated) of the label.

Format: ^BCo,h,f,g,e,m
Important • If additional information about the Code 128 bar code is required, go to

Format: ^BCo
,h,f,g
,e, m

Parameters Details
o = orientation

Values:
N = normal
R = rotated 90 degrees (clockwise)
I = inverted 180 degrees
B = read from bottom up, 270 degrees
Default: current ^FW value

h = bar code height
(in dots)
ratio

Values: 1 to 32000
Default: value set by ^BY

f = print
interpretation
line

Values: Y (yes) or N (no)
Default: Y
The interpretation line can be printed in any font by placing the font command
before the bar code command.

g = print
interpretation
line above code

Values: Y (yes) or N (no)
Default: N

e = UCC check digit

Values: Y (turns on) or N (turns off)
Mod 103 check digit is always there. It cannot be turned on or off. Mod 10
and 103 appear together with e turned on.
Default: N

m = mode

Values:
N = no selected mode
U = UCC Case Mode

⋅ More than 19 digits in ^FD or ^SN are eliminated.
⋅ Fewer than 19 digits in ^FD or ^SN
add zeros to the right to bring the
count to 19. This produces an invalid interpretation line.

A = Automatic Mode

This analyzes the data sent and automatically determines the best
packing method. The full ASCII character set can be used in the ^FD
statement — the printer determines when to shift subsets. A string of
four or more numeric digits causes an automatic shift to Subset C.

D = UCC/EAN Mode (x.11.x and newer firmware)

This allows dealing with UCC/EAN with and without chained
application identifiers. The code starts in the appropriate subset
followed by FNC1 to indicate a UCC/EAN 128 bar code. The printer
automatically strips out parentheses and spaces for encoding, but
prints them in the human-readable section. The printer automatically
determines if a check digit is required, calculate it, and print it.
Automatically sizes the human readable.

Default: N

Python скрипты для печати ZPL

Очень часто бывает нужно напечатать большое количество тэгов таким образом, чтобы
серийный номер возрастал на 1 у каждого следующего тэга.

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

Формат пусть будет

GIAI-96

, код компании помещается в 24 бита, для примера возьмём 1234567

Запишем сперва код для этикетки.

^XA
^CI28
^PW500^FS
^RW24,26,A2^FS
^RS8,B13,100,1,E^FS
^RB96,8,3,3,24,58^FS
^RFW,E^FD52,0,5,1234567,${userID},^FS
^FN3^RFR,H^FS
^HV3
^FWN^FO90, 15^AD,90,22^FDTVS^FS
^FT90,110^A0N,25,25^FH^FDUSER:${userID}
^FS
^XZ

Для создания скрипта нужно познакомиться с основами языка

Python

а также с

сокетами

, которые нужны для работы с сетью

import socket
mysocket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
host = "10.6.1.123"
port = 9100

try:
mysocket.connect((host, port)) #connecting to host
for i in range(100073,100100):
userId = str(i)
mysocket.send(b"^XA^CI28^PW500^FS")
mysocket.send(b"^RW24,26,A2^FS")
mysocket.send(b"^RS8,B13,100,1,E^FS")
mysocket.send(b"^RB96,8,3,3,24,58^FS")
mysocket.send(b"^RFW,E^FD52,0,5,1234567,")
mysocket.send(bytes(userId,"utf-8"))
mysocket.send(b",^FS")
mysocket.send(b"^FN3^RFR,H^FS")
mysocket.send(b"^HV3")
mysocket.send(b"^FWN^FO90, 15^AD,90,22^FDCompanyName^FS")
mysocket.send(b"^FT90,110^A0N,25,25^FH^FDUSER:")
mysocket.send(bytes(userId,"utf-8"))
mysocket.send(b"^FS^XZ")
mysocket.close () #closing connection
except:
print("Error with the connection")

Можно не писать в каждой строчке mysocket.send , а использовать Heredoc и Python f-string

import socket
mysocket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
host = "10.6.1.123"
port = 9100

try:
mysocket.connect((host, port)) #connecting to host
for i in range(100073,100100):
userId = str(i)
layout = (f"""
^XA^CI28^PW500^FS
^RW24,26,A2^FS
^RS8,B13,100,1,E^FS
^RB96,8,3,3,24,58^FS
^RFW,E^FD52,0,5,1234567,{userId},^FS
^FN3^RFR,H^FS
^HV3
^FWN^FO90, 15^AD,90,22^FDCompanyName^FS
^FT90,110^A0N,25,25^FH^FDUSER:{userId},^FS
^FS^XZ
""")
mysocket.send(bytes(layout,"utf-8"))
mysocket.close () #closing connection
except:
print("Error with the connection")

Похожие статьи

RFID
ZPL FAQ
A пример
FT примеры

background image

187

Характеристики

Функции

02.05.2013

Xi4™/RXi4™ Руководство пользователя

P1009874-153

Язык программирования Zebra (ZPL)

Функции ZPL II включают:

• Загружаемые изображения, масштабируемые

и растровые шрифты, а также форматы
этикеток

• Управление осуществляется с помощью

мейнфрейма, миникомпьютера, ПК,
портативного терминала ввода данных

• Копирование объектов в областях памяти

• Программируемое количество, а также

функции управления печатью, паузой
и обрезкой

• (ОЗУ, карта памяти и внутренняя флэш-память) • Обмен данными с помощью печатаемых

символов ASCII

• Набор данных кодовой страницы 850

• Протокол проверки ошибок

• Сжатие данных

• Передача сообщения о состоянии

в управляющий компьютер по запросу

• Автоматическое управление буфером

виртуального ввода

• Упорядоченные поля

• Обратное преобразование форматов

• Отвечающие техническим условиям шрифты

OCR-A и OCR-B

• Печать зеркального изображения

• Универсальный товарный код (UPC)/

Европейский товарный код (EAN)

• Четырехпозиционное вращение поля

(0°, 90°, 180°, 270°)

• Программируемый пользователем пароль

• Команда вращения

Видео Zebra 105SLPlus: Printhead Pressure Adjustment (автор: Zebra Technologies)01:36

Zebra 105SLPlus: Printhead Pressure Adjustment

Видео Zebra 105SL Ribbon and Label Loading Instructions (автор: RACO Industries)02:23

Zebra 105SL Ribbon and Label Loading Instructions

Видео Zebra - 105SL Manual Calibration (автор: Support98)02:30

Zebra — 105SL Manual Calibration

Видео Zebra - 105SLPlus: Ribbon & Media Sensor Calibration (автор: Zebra Technologies)01:47

Zebra — 105SLPlus: Ribbon & Media Sensor Calibration

Видео Zebra 105SLPlus: Ribbon & Media Loading (автор: Zebra Technologies)01:58

Zebra 105SLPlus: Ribbon & Media Loading

Видео Zebra 105SL Plus - How to insert printed label in the printer Zebra (автор: Taikour Pen)08:07

Zebra 105SL Plus — How to insert printed label in the printer Zebra

Видео Zebra 105SL Plus - How to clean Print Head (автор: Taikour Pen)05:48

Zebra 105SL Plus — How to clean Print Head

Видео Zebra 105SL Plus Ribbon & Media Sensor Calibration (автор: Eastern IT)02:00

Zebra 105SL Plus Ribbon & Media Sensor Calibration

181

Характеристики

Функции

01.05.2013

P1056468-152

Язык программирования Zebra (ZPL)

Функции ZPL II включают:

Штрихкоды

Типы штрихкодов:

• Загружаемые изображения, масштабируемые

и растровые шрифты, а также форматы
этикеток

• Управление с помощью мейнфрейма, мини-

компьютера, ПК, портативного терминала
ввода данных

• Копирование объектов между областями

памяти

• Программируемое количество, а также

функции управления печатью, паузой
и обрезкой

• (ОЗУ, карта памяти и внутренняя флэш-память) • Обмен данными с помощью печатаемых

символов ASCII

• Набор данных кодовой страницы 850

• Протокол проверки ошибок

• Сжатие данных

• Передача сообщения о состоянии

в управляющий компьютер по запросу

• Автоматическое управление буфером

виртуального ввода

• Упорядоченные поля

• Обратное преобразование форматов

• Отвечающие техническим условиям шрифты

OCR-A и OCR-B

• Печать зеркального изображения

• Универсальный товарный код

(UPC)/Европейский товарный код (EAN)

• Четырехпозиционный поворот поля

(0°, 90°, 180°, 270°)

• Программируемый пользователем пароль

• Коэффициенты пропорциональности

штрихкодов: 2:1, 7:3, 5:2, 3:1

• LOGMARS

• Codabar (поддерживает соотношения от 2:1 до

3:1)

• MaxiCode

• CODABLOCK

• Micro PDF

• Code 11

• MSI

• Code 39 (поддерживает коэффициенты от 2:1

до 3:1)

• PDF-417 (двумерный штрихкод)

• Code 49 (двумерный штрихкод)

• Код PLANET

• Code 93

• Plessey

• Code 128 (с поднаборами A, B и C и кодами

регистров UCC)

• POSTNET

• Вычисление контрольного разряда (если

применяется)

• QR-Code

• Data Matrix

• Код RSS

• Расширения EAN-8, EAN-13, EAN

• Standard 2 из 5

• ISBT-128

• TLC 39

• Industrial 2 из 5

• Расширения UPC-A, UPC-E, UPC

• Interleaved 2 из 5 (поддерживает коэффициенты

от 2:1 до 3:1, контрольный разряд Modulus 10)

Язык программирования zebra (zpl), Штрихкоды, Язык программирования zebra (zpl) штрихкоды

Общие характеристики, Физические характеристики, Электрические характеристики

Страница 182

  • Изображение
  • Текст

Характеристики
Общие характеристики

182

P1056468-152

01.05.2013

Общие характеристики

Физические характеристики

Электрические характеристики

Условия окружающей среды при эксплуатации и хранении

Размеры

Высота

393,7 мм (15,5 дюйма)

Ширина

262 мм (10,31 дюйма)

Глубина

517,5 мм (20,38 дюйма)

Вес без дополнительных
возможностей

22,7 кг (50 фунтов)

Питание

Общее

100–240 В перем. тока;
47–63 Гц

Потребление энергии при печати в
режиме тестирования

PAUSE

(ПАУЗА)

с наименьшей скоростью

121 Вт

Принтер в режиме бездействия

20 Вт

Среда

Режим

Температура

Относительная
влажность

Эксплуатация

Термоперенос

от 5 до 40 °C
(от 40 до 105 °F)

от 20 до 85 % (без
конденсации)

Прямая термопечать

от 0 до 40 °C
(от 32 до 105 °F)

Хранение

Термоперенос или
прямая термопечать

от -40 до 60 °C
(от -40 до 140 °F)

от 5 до 85 % (без
конденсации)

Общие характеристики, Физические характеристики, Электрические характеристики

183

Характеристики

Характеристики печати

01.05.2013

P1056468-152

Характеристики печати

Характеристики принтера показаны в следующих таблицах.

Характеристики печати

203 т/д

300 т/д

Разрешение печатающей головки 203 тчк/дюйм

(8 тчк/мм)

300 тчк/дюйм
(12 тчк/мм)

Размер точки
(ширина × длина)

0,125×0,125 мм
(0,0049×0,0049 дюйма)

0,084×0,099 мм
(0,0033×0,0039 дюйма)

Положение первой точки (от
внутреннего края носителя)

2.5 ± 0,9 мм
(0,10 ± 0,035 дюйма)

0,6 ± 0,9 мм
(0,023 ± 0,035 дюйма)

Максимальная ширина печати

102 мм (4 дюйма)

102 мм (4 дюйма)

Максимальная длина печати
(несплошной носитель)

991 мм (39 дюймов)

991 мм (39 дюймов)

Максимальная длина печати
(сплошной носитель)

3810 мм (150 дюймов)

3810 мм (100 дюймов)

Выбираемые скорости печати
(в дюймах в секунду)

2,4; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12

2,4; 3; 4; 5; 6; 7; 8; 9

Размер модуля штрихкодов (X):
Горизонтальная ориентация
(повернутая)
Вертикальная ориентация (без
поворота)

от 4,9 до 49 мил
от 4,9 до 49 мил

от 3,9 до 39 мил
от 3,33 до 33 мил

Печатающая головка для тонкой
ленты с системой Element Energy
Equalizer (E

3

)

®

Да

Да

Характеристики печати

Характеристики
Характеристики носителя

184

P1056468-152

01.05.2013

Характеристики носителя

Для оптимальной производительности используйте этикетки подходящего размера
и типа. Характеристики показаны в следующих таблицах.

110

Важно •

Регистрация носителя и минимальная длина этикетки зависят от типа и

ширины этикетки, типа ленты, скорости ечати и режима работы принтера. После
оптимизации этих факторов производительность принтера повышается Компания
Zebra рекомендует полностью тестировать любое применение.

Характеристики носителя

203 т/д

300 т/д

Минимальная длина этикетки Отрывание

18 мм (0,7 дюйма)

18 мм (0,7 дюйма)

Отклеивание

13 мм (0,5 дюйма)

13 мм (0,5 дюйма)

Резак

38 мм (1,5 дюйма)

38 мм (1,5 дюйма)

Перемотка

6 мм (0,25 дюйма)

6 мм (0,25 дюйма)

Общая ширина носителя
(этикетка + подложка,
если есть)

Минимум

20 мм (0,79 дюйма)

20 мм (0,79 дюйма)

Максимум

114 мм (4,5 дюйма)

114 мм (4,5 дюйма)

Общая толщина
(включая подложку, если есть)

0,076 мм (0,003 дюйма)

0,076 мм (0,003 дюйма)

0,305 мм (0,012 дюйма)

0,305 мм (0,012 дюйма)

Максимальная толщина носителя в полную
ширину резака

0,23 мм (0,009 дюйма)

0,23 мм (0,009 дюйма)

Внутренний диаметр катушки рулона носителя

76 мм (3 дюйма)

76 мм (3 дюйма)

Максимальный диаметр рулона на катушке
76 мм (3 дюйма)

203 мм (8 дюймов)

203 мм (8 дюймов)

Промежуток между
этикетками

Минимум

2 мм (0,079 дюйма)

2 мм (0,079 дюйма)

Предпочтительно 3 мм (0,118 дюйма)

3 мм (0,118 дюйма)

Максимум

Не больше
откалиброванной длины
этикетки.

Не больше
откалиброванной длины
этикетки.

Максимальный внутренний размер стопки
фальцованного носителя (этикетка + подложка):
Д × Ш × В

203Ч114Ч114 мм
(8,0Ч4,5Ч4,5 дюйма)

203Ч114Ч114 мм
(8,0Ч4,5Ч4,5 дюйма)

Засечка для определения билета или ярлыка:
Д × Ш

3×6 мм (0,12×0,25
дюйма)

3×6 мм (0,12×0,25
дюйма)

Диаметр отверстия определения билета или
ярлыка

3 мм (0,125 дюйма)

3 мм (0,125 дюйма)

Допустимые пределы регистрации этикетки
(по вертикали)

1,5 мм (0,06 дюйма)

1,5 мм (0,06 дюйма)

Допустимые пределы регистрации этикетки
(по горизонтали)

1,5 мм (0,06 дюйма)

1,5 мм (0,06 дюйма)

Максимальная плотность носителя

0,5 ЕОП

0,5 ЕОП

Характеристики носителя

185

Характеристики

Характеристики ленты

01.05.2013

P1056468-152

Распознание черной метки

Характеристики ленты

Характеристики ленты показаны в следующих таблицах.

Характеристики носителя

203 т/д

300 т/д

Длина метки (параллельно
краю этикетки или ярлыка)

Минимум

3 мм (0,12 дюйма)

3 мм (0,12 дюйма)

Максимум

11 мм (0,43 дюйма)

11 мм (0,43 дюйма)

Ширина метки (измеряется
перпендикулярно краю
этикетки или ярлыка)

Минимум

11 мм (0,43 дюйма)

11 мм (0,43 дюйма)

Максимум

Полная ширина носителя Полная ширина носителя

Расположение метки

в пределах 1 мм
(0,040 дюйма) от
внутреннего края
носителя

в пределах 1 мм
(0,040 дюйма) от
внутреннего края
носителя

Плотность метки в единицах оптической
плотности (ЕОП)

> 1,0

> 1,0

Примечание •

Учитывайте следующие факторы при использовании ленты:

• Подбирайте ленту в соответствии с шириной используемых этикеток и печатающей

головки. Для защиты печатающей головки от чрезмерного износа ширина ленты
должна быть не меньше ширины этикеток.

• Лента должна наматываться стороной с покрытием наружу.

Характеристики ленты

203 т/д

300 т/д

Разрешение печатающей
головки

203 тчк/дюйм
(8 тчк/мм)

300 тчк/дюйм
(12 тчк/мм)

Минимальная ширина ленты

20 мм (0,79 дюйма)

20 мм (0,79 дюйма)

Максимальная ширина ленты

110 мм (4,33 дюйма)

110 мм (4,33 дюйма)

Максимальная длина ленты

450 м (1476 футов)

450 м (1476 футов)

Внутренний диаметр катушки
ленты

25,4 мм (1 дюйм)

25,4 мм (1 дюйм)

Максимальный внешний
диаметр рулона ленты

81,3 мм (3,2 дюйма)

81,3 мм (3,2 дюйма)

Характеристики ленты

Характеристики
Характеристики ленты

186

P1056468-152

01.05.2013

Примечания •

_____________________________________________________________

__________________________________________________________________________

__________________________________________________________________________

__________________________________________________________________________

__________________________________________________________________________

__________________________________________________________________________

__________________________________________________________________________

__________________________________________________________________________

__________________________________________________________________________

__________________________________________________________________________

ХарактеристикиХарактеристики ленты ...

01.05.2013

P1056468-152

Глоссарий

блокировка Этот термин обычно используется для описания неисправного
состояния, которое без явных признаков являетс причиной прекращения работы
принтера. ЭТА КОМАНДА ОТСУТСТВУЕТ В РУКОВОДСТВЕ ZPL.

буквенно-цифровой Означает использование букв, цифр и символов, таких как
знаки препинания.

датчик носителя Этот датчик находится за печатающей головкой; он необходим для
определения наличия носителя, а при использовании несплошного носителя — для
определения положения формовки, отверстий или засечек, обозначающих наало каждой
этикетки.

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

диаметр катушки Внутренний диаметр картонной катушки, расположенной в центре
рулона носителя или ленты.

динамическое ОЗУ Запоминающее устройство, используемое для хранения
форматов этикеток в электронном виде во время их печати. Объем памяти
динамического ОЗУ, доступный в принтере, определяет максимальный размер и число
форматов этикеток, которые могут быть напечатаны. Это энергозависимая память,
информация из которой удаляется при выключении питания.

дюйм/с (дюймов в секунду) Скорость печати этикетки или ярлыка. принтеры Zebra
могут печатать со скоростью от 1 до 12 дюйм/с.

жидкокристаллический дисплей (ЖК-дисплей) ЖК-дисплей — это дисплей
с задней подсветкой, на котором показаны рабочее состояние в процессе обычной
эксплуатации или параметры меню во время настройки принтера для определенного
применения.

Глоссарий

замятие ленты Образование складок ленты, вызванное неправил…

Страница 188

  • Изображение
  • Текст

Глоссарий

188

P1056468-152

01.05.2013

замятие ленты Образование складок ленты, вызванное неправильным
выравниванием или неправильным давлением печатающей гловки. Замятие может стать
причиной образования пропусков при печати и/или неровной перемотки используемой
лент. Такое состояние необходимо устранить, выполнив процедуры регулировки.

энергонезависимая память Электронная память, данные в которой сохраняются
даже после выключения питания принтера.

этикетка Используемый для печати информации лист бумаги, пластика или иного
материала с клейкой оборотной стороной.

износ печатающей головки Ухудшение со временем поверхности печатающей
головки и/или печатающих элементов. Нагревание и трение могут вызывать износ
печатающей головки. Поэтому для продления срока службы печатающей головки
необходимо использовать минимальное значение параетра темности печати (иногда
называется температурой выжигания или температурой головки) и минимальное
двление печатающей головки, достаточное для обеспечения высокого качества печати.
При печати способом термопереноса необходимо использовать ленту, ширина которой
равна ширине носителя ил превышает ее, чтобы защитить печатающую головку от
грубой поверхности носителя. ЭТА КОМАНДА ОТСУТСТВУЕТ В РУКОВОДСТВЕ
ZPL.

калибровка (принтера) Процесс определения принтером ряда основных данных,
необходимых для правильной печати с определенной комбинацией носителя и ленты.
Для этого принтер подает часть носителя и ленты (если есть) через принтер и
определяет необходимость выполнения прямой термопечати или термопереноса,
а также (для несплошного ностеля) длину отдельных этикеток или ярлыков.

конфигурация Конфигурация принтера — это группа рабочих параметров,
относящихся к определенному применению принтера. Некоторые параметры
устанавливаются пользователем, а другие зависят от установленных компонентов и
режима работы. Параметры можно выбирать с помощью переключателей,
программировать на панели управления или загружать в виде команд ZPL II. Этикетку
с конфигурацией, на которой перечислены все текущие параметры принтера, можно
распечатать для справки.

кронштейн подачи носителя Неподвижный рычаг, поддерживающий рулон
носителя.

лента Полоса материала, состоящая из пленочной основы, которая покрыта воском
или смолистыми «чернилами». Сторона материала, покрытая чернилами, прижимается
печатающей головкой к носителю. Чернила переходят с ленты на носитель при нагреве
с помощью небольших элементов печатающей головки. На обратную сторону ленты
Zebra нанесено покрытие, предотвращающее износ печатающей головки.

микропрограмма Этот термин обозначает рабочую программу принтера. Эта
программа загружается в принтер из управляющего компьютера и хранится во флэш-
памяти. Рабочая программа запускается каждый раз при включении питания принтера.
Она управляет подачей носителя вперед или назад и печатью точки на рулоне этикеток.

 замятие ленты Образование складок ленты, вызванное неправил...

нарезанный носитель Тип заготовки этикеток, в которой этике…

Страница 189

  • Изображение
  • Текст

189

Глоссарий

01.05.2013

P1056468-152

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

несплошной носитель

.)

несплошной носитель Носитель, содержащий указатель окончания одной
этикетки/печатного формата и начала следующей. Примеры: нарезанные этикетки,
заготовки ярлыков с засечками и заготовка с черными регистрационными отметками.

носители Материал, на котором принтер печатает данные. Могут использоваться
следующие типы носителей: заготовки ярлыков, нарезанные этикетки, сплошные
этикетки (с подложкой или без нее), несплошной носитель, фальцованный носитель
и рулонный носител.

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

носитель с засечками Тип заготовки ярлыков, содержащий область отрезки,
которую принтер обнаруживает как указатель начала этикетки. Обычно это более
тяжелый, подобный картону, материал, который отрезается или отрывается от
следующего ярлыка. (См.

несплошной носитель

.)

обратная подача Действие, когда принтер втягивает носитель или ленту (если есть)
обратно в принтер так, что начало этикетки, которая должна быть распечатана,
правильно расположено за печатающей головкой. Обратная подача имеет место, если
принтер работает в режимах отрывания и аппликатора.

отклеивание Режим работы, в котором принтер отклеивает напечатанную этикетку от
подложки, благодаря чему пользователь может извлечь этикетку перед печатью
следующей этикетки. Печать приостанавливается, пока этикетка не будет извлечена.

отрывание Режим работы, в котором пользователь вручную отрывает этикетку или
ярлык от остального носителя.

подложка этикетки Материал, на который наклеиваются этикетки при изготовлении
и который отрывается или перерабатывается поьзователями.

пропуск Область, в которой должна быть выполнена печать, но не была выполнена из-
за ошибки — например, вызванной заятием ленты или неисправностью печатающих
элементов. Из-за пропуска напечатанный символ штрихкода может считываться
неправильно или не считываться вообще.

прямая термопечать Способ печати, при котором печатающая головка прижимается
непосредственно к носителю. Из-за нагревания элементов печатающей головки
происходит изменение цвета чувствительного к нагреву покрытия носителя. Благодаря
выборочному нагреву элементов печатающей головки при перемещении носителя
происходит печать иображения на носителе. При этом способе печати лента не
используется. Сравните с

термопереносом.

расходные материалы Общий термин для носителя и ленты.

 нарезанный носитель Тип заготовки этикеток, в которой этике...

регистрация Выравнивание печати относительно верха …

Страница 190

  • Изображение
  • Текст

Глоссарий

190

P1056468-152

01.05.2013

регистрация Выравнивание печати относительно верха (по вертикали) или сторон (по
горизонтали) этикетки или ярлыка.

рулонный носитель Носитель, намотанный на катушку (обычно картонную).
Сравните с

фальцованным носителем.

светодиод (световой индикатор) Индикаторы определенных состояний принтера.
Каждый светодиод может не гореть, гореть или мигать в зависимости от
контролируемой функции.

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

скорость печати Скорость, с которой выполняется печать. Для принтеров,
печатающих путем термопереноса, эта скорость выражается в дюймах в секунду (дм/с).

сплошной носитель Носитель с этикетками или заготовками ярлыков, на котором
отсутствуют просечки, промежутки или перфорация (только подложка носителя) для
разделения этикеток или ярлыков. Носитель является одним длинным куском
материала.

термоперенос Способ печати, при использовании которого печатающая головка
прижимает ленту с чернилами или со смолистым покрытием к носителю. При
нагревании элементов печатающей головки происходит перенос чернил или смолистых
веществ на носитель. Благодаря выборочному нагреву элементов печатающей головки
при перемещении носителя и ленты происходит печать изображения на носителе.
Сравните с

прямой термопечатью.

фальцованный носитель Это носитель, сложенный гармошкой. Сравните
с

рулонным носителем.

флэш-память Флэш-память является энергонезависимой — сохраненная в ней
информация не теряется при выключении питания. Эта память используется для
хранения рабочей программы принтера. Кроме того, эту память можно использовать для
хранения дополнительных шрифтов, графических форматов и готвых форматов
этикеток принтера.

черная отметка Разграничительная метка, расположенная на оборотной стороне
печатного носителя и используемая для передачи в принтер указания о начале этикетки.
(См.

несплошной носитель

.)

шрифт Полный набор буквенно-цифровых символов одного стиля. Примеры:
CG Times™, CG Triumvirate Bold Condensed™.

штрихкод Код, с помощью которого буквенно-цифровые символы могут быть
представлены последовательностью смежных поос различной ширины. Существует
множество различных схем кодирования, например универсальный товарный код (УТК)
или Code 39.

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

 регистрация Выравнивание печати относительно верха ...

Комментарии

Язык программирования Zebra

Zebra Programming Language.png

Логотип зебры

Разработчик Зебра Технологии
Операционные системы независимый
Под влиянием
ANSI BASIC

Zebra Programming Language ( ZPL ) — это язык описания страниц от Zebra Technologies , используемый в основном для маркировки приложений. Исходный язык был заменен ZPL II , но он не полностью совместим со старой версией. ZPL II поддерживается некоторыми принтерами этикеток сторонних производителей.

Позже интерпретатор Zebra BASIC ( ZBI ) был интегрирован в программное обеспечение принтера, что рассматривается производителем как усовершенствование ZPL II и ориентировано на ANSI BASIC . В первую очередь, это сделано для того, чтобы избежать рефакторинга кода при смене принтера, если старое программное обеспечение для принтера было написано принтером для этикеток конкурента. Возможное использование ZBI ​​может быть в том случае, когда принтер Zebra получает чужой формат этикетки, который затем на лету конвертируется в ZPL II, чтобы его можно было распечатать.

Команды

Языковые команды всегда начинаются с символа вставки (‘ ^‘) или тильды (‘ ~‘). ZPL II насчитывает более 170 команд. Каждый формат должен начинаться с команды ^XAи заканчиваться ^XZ. Например, размер шрифта отправляется на принтер с помощью ^ADN,n,mкоманды, где nи m— целые числа, обозначающие размер шрифта и характеристики интервала; ^ADN,18,10это самый маленький размер и ^ADN,180,100самый большой.

Ниже приведен полный пример документа ZPL для этикетки продукта:

^XA
^CF0,30
^FO300,30^FDHU  Label^FS
^CF0,25
^FO20,100^FDHU ID:         112345678000001107^FS
^BY2.2,3,70
^FO20,130^BCN,,N^FD112345678000001107^FS
^FO20,230^FD60-Volt Cordless Electric Hedge Trimmer^FS
^FO20,260^FD13^FS
^FO650,200^BQN,2,5^FDQA,^FS
^XZ

Смотрите также

  • Язык программирования Eltron (EPL)

использованная литература

внешние ссылки

  • Руководство по программированию (номер детали: P1012728-008 Rev. A)
  • Руководство по программированию ZPL II (том I)
  • Руководство по программированию ZPL II (том II)
  • Онлайн-просмотрщик ZPL от Labelary

Понравилась статья? Поделить с друзьями:
  • Как называется программа которая превращает высокоуровневый код в машинные инструкции
  • Скайрим нет квеста смена руководства
  • Skilhunt h03 инструкция на русском скачать
  • Руководство вкр в вузе что это
  • Регулирование общественных отношений осуществление руководства обществом что это