ZPL指令

^CC,~CC 改变格式指令前缀

  ^CC,~CC(改变脱字符)指令是用于改变指令前缀。缺省前缀是脱字符(^)。

^CC,~CC指令格式
  ^CCx,~CCx

^CC,~CC

= 改变脱字符

x

= 任何ASCII字符
    缺省值:要求有参数。如不用参数,下一字符接收后作为新的前缀字符。

注意:不要设任何和另一个前缀相同的值。

 

^CD,~CD 改变ZPL分隔符

  ^CD,~CD(改变分隔符)指令是用于改变ZPLII分隔符。这符号是用来分离输入ZPL指令中几个参数。缺省的分隔符(,)。

^CD,~CD指令格式
  ^CDx,~CDx

^CD,~CD

= 改变分隔符

x

= 任何ASCII字符
    缺省值:要求有参数。如不用参数,下一字符接收后作为新的前缀字符。

 

^CF 改变字符字体默认字体

  你可用^CF(改变字母缺省字体)指令,使你程序变得更简单,

指令格式
  ^CFf, h, w

^CF

= 改变缺省字体

f

= 指定默认字体
    A = 字体A (开机初始化值)
其它值:B到H,和0~9
(任何在打印机的字体,包括下载字体,EPROM贮存字体和字体A-Z和1-9可通过^CW选择)
b = 单个字符点高度
    可接受的数值:0~9999 开机初始化值 =9
c = 单个字符点宽度
    可接受的数值:0~9999 开机初始化值 =5

  参数f指定所有字符字段的缺省字体。参数h指定对每一字符字段的缺省高度,参数指定每一字符字段的缺省宽度。
  缺省字体字母是A,如果不改变缺省字体字母(^CF指令),也不用任何段指令字母(^Af)或输入一个非法字体值,将用字体A打印数据。
  定义仅仅高或宽,放大比例由参数定义。如值被定义,上次所给高和宽^CF值或缺省^CF值。如果两个都没有定义,使用最后一个^CF值给出的值或默认的^CF值给出高度和宽度。

 

^CI 国际字符设置

  斑马打印机可打印各种国际字符字体:美国1,美国2,英国,荷兰,丹麦,挪威,瑞典,芬兰,德国,法国1,法国2,意大利,西班牙等。ZPLII遵循国际字符的ISO标准。
  ^CI(改变国际字体)指令允许你调用国际字符设置给你打印。你可混合表中字符设置。以下说明可用国际字符设置。调用一个国际字符设置指令是:

^CI x

^CI

= 改变国际字体

x

= 希望的字符设置
    0 = USA1 (开机初始化设置)

其它可接受的值
1=美国2,
2=英国,
3=荷兰,
4=丹麦/挪威,
5=瑞典/芬兰,
6=德国,
7=法国1,
8=法国2,
9=意大利,
10= 西斑牙,
11=其它,
12=日本,
13=IBM 850码
在版本X.7.0,16.5.0中有效的:
14=16位(Unicode)编码的曲线字库。*
15=Shift-JIS,日本字库的曲线字库。**
16= EUC-KANJI的曲线字库。
17= Unicode(Unicode编码的字体)。
18-23 = 保留。
24= 8位存取的Unicode编码字体。

开机初始化值= 上次永久保存的值。

  *编码由转换表(*.DAT)控制。该表可由ZTOOLS对TrueType 字库进行编码时生成。
  **Shift-JIS编码转换Shift-JIS 为JIS,然后在JIS.DAT中查找JIS编码。这个表必须当前正使用Shift-JIS。

 

^CO 使用缓冲

  ^CO(使用缓存)指令用于改变字符缓冲大小。撟址捍鏀(这里指的是缓冲区)的定义是保留为接收和贮存曲线字符的DRAM的一部分。所有打印机默认使用22K缓冲。如果不改变缓存的大小,最大单个字符尺寸是450点 X 450点。
  斑马打印机有二种字库类型。点阵和曲线字库。字母,数字,和符号在点阵字体有一固定尺寸。如10点,12点,14点等。曲线字体是没固定尺寸,它们的大小是由用户选择的。
  由于点阵字体的尺寸是固定的,它们可快速打印到标签上。而曲线字体要慢一点,因为每个字符在打印到标签前需要生成必要的基本字。调用贮存在摶撼鍞中的曲线字体可以加快速度。
  贮存在缓存里字符的数量取决于二个因素;缓存(内容)的大小和贮存字符(点数)的尺寸。点阵尺寸大,缓冲空间用得就多。缺省的缓存贮存每一个标签上的需要用的曲线字体的字符。如果有同样的字符,相同旋转的方向和大小,它可以快速从缓存中恢复。
  很快,打印缓存就会满。就会发生新的字符把打印缓冲里已存在的字符清除。清除存在的字符是由他们使用的次数决定。这里自动做的。例如,一个只用过一次的28点的“Q”便是一个将从CACHE中清除的候选者。
  最大尺寸单字1500点X 1500点缓存,要求300K缓存。
  当缓存太少时,小的字符可以打印,大的字符将不能打印。如有可能,增加缓存容量。
  注意:缓存容量可按需要定义。当重定义时任何在缓冲里字符被丢失。使用点阵,图象,下载字体等会使缓存空间减少。

^CO指令格式
  ^COa, b,c

^CO

= 使用缓存

a

= 使用缓存
    缺省值:Y=使用
其它值:N=不使用
b = 加到缓存里附加内存千字节数
    默认值:40K(如没不指定数字)
版本16.5.0中有效:
其他值:300(使用Kanji字体时推荐)
c = 缓存类型
    16.5.0版本有效:
默认值:0 = 高速缓存(一般字体)
1 = 内部缓存(Kanji字体推荐)

注意:Kanji需要一个内部的比一般的缓存大得多的工作缓存,因为大多数的字体不需要这么大的缓存,所以这是一个可选择的配置。使用Kanji字体将大量地减少打印机用于打印标签、图形、字体和格式的内存。

  以下是用^CO指令例子
  重定义打印缓存为62K
  ^COY 40K(缺省内存)+22K(已存在的缓存)= 62K
  重定义打印缓冲到100K
  ^COY 78K(增加内存)+22K(已存在的缓冲)=100K

打印缓冲执行注意事项

  在打印大字符时,由^CO指令把内存增加到缓存不是物理地加到打印机已有的22K缓冲上的。在以上第二个例子中,100K缓冲实际是两块存贮器,22K和78K。
  当大字符需要连续的内存块。一个字符需要90K缓冲就不能完全贮存于100中K的内存中。因为100K缓冲中的两个内存块都不够大。如果要打印大字符时,^CO指令将按你需要的实际缓存容量设。
  增加缓冲尺寸将改进打印曲线字体的打印。然而,如缓存容量太大,字符太多,性能也会下降。因为通过搜索缓冲所有字符花去很多时间,性能将会得不到改善。

 

^CT,~CT  改变命令指令前缀

  ^CT,~CT(改变分隔符)指令是用于改变指令前缀。缺省前缀是(~)。

^CT,~CT指令格式
  ^CTx,~CTx

^CT,~CT

= 改变鄂氏符

x

= 任何ASCII字符
    缺省值:要求有参数。如不用参数,下一字符接收后作为新的前缀字符。

  用脱字符(^)指令,你必须用格式括号指令(^XA和^XZ)围住。例如,改变格式指令前缀为斜杠(/)并改变分隔符为(+),你的程序行应是这样:

^XA^CD+^CC/^XZ

  你改变格式指令前缀后,你将用/XA和/XZ括号围上程序。

 

^CV 代码确认

  ^CV(代码确认)是一个开关,它打开或关闭代码确认功能。当代码确认打开时,所有的条码数据都将检查以下几种错误情况:

  • 字符不在字符集中
  • 校验位不正确
  • 数据字段太长(字符太多)
  • 数据字段太短(字符太少)
  • 参数串包含了不正确的参数或丢失参数

  检测到非法字符时,打印机将打印一个错误信息和代码来代替代码图像。信息以“INVALID-X”的方式显示,X是以下的错误代码:

C = 字符不在字符集中
E = 校验位不正确
L = 数据字段太长(字符太多)
S = 数据字段太短(字符太少)
P = 参数串包含了不正确的参数或丢失参数

  一旦打开了条码确认功能,^CV将一直保持作用到下一个^CV关闭条码确认功能。本命令不永久保存。
  注:如果存在不止一个错误,显示第一个错误。

^CV命令的格式是:

^CVa

^CV

= 条码确认

a

= 代码确认
    默认值:N=不检测
其他值:Y= 检测

以下例子是^CV如何工作的。第一个示例打印出了正确的条码,其他的示例打出了错误信息。

 

^CW 字体标识

  所有机内字体有一字符标识如A、B、C等。^CW(字体标识)指令分配单个字母字符(A到Z和0到9)用于下载到DRAM R:的字体,内存卡 B:,EPROM E:,或内建的 Z:。
  如果字符和机内字体符相同,则下载字体代替机内字体。当格式里调用机内字体时,下载字体将被打印在标签上。如替换了机内字体,这改变起作用到到关机。
  如给的字符是不同的,下载字体是作为一种增加的字体。所给的字体将保存直到新的指令输入或打印机关机。

^CW指令格式是
  ^Cwa,d,f

^CW

= 字体标识。ZPLII调用时使用新的字体。

a

= 替代机内字体字母或加入新字体。 (要求输入一个字符)
d = 贮存字体源设备 (附加。缺省是R:)
f = 下载字体名替换机内字体或增加字体。(扩展固定在.FNT。)
    缺省:Unknown

以下是用^CW指令一些例子
将MYFONT.FNT贮存在DRAM中,格式称为字体A:
  ^XA^CWA,R:MYFONT.FNT^XZ

将MYFONT.FNT贮存在DRAM中,增加字体Q:
  ^XA^CWQ,R:MYFONT.FNT^XZ

将NEWFONT.FNT贮存在DRAM中,格式称为F:

^XA^CWF,R:MYFONT.FNT^XZ

 

~DB 下载点阵字体

  ~DB(下载点阵字体)指令设置打印机按收下载点阵字体,定义原始单元尺寸,基准线,空间大小和版权。
  这指令由两部份组成,一个ZPLII指令定义字体和数据结构段内每个字符字体。
  以下是一个使用~DB命令的例子。它将头两个字符下载到DRAM中。

~DBR:TIMES.FNT,N,5,24,3,10,2,ZEBRA 1992,
#0025.5.16.2.5.18.
00FF
00FF
FF00
FF00
FFFF
#0037.4.24.3.6.26.
00FF00
0F00F0
0F00F0
00FF00

~DB指令格式
  ~DBd,o.x, a, h, w, base, space, #char, ©, DATA

~DB

= 设置打印机接受下载字体。

d

= 贮存字体到目标设备。(固定,始终是DRAM(R:))
o = 字体名,1-8字符,
    默认值: 缺省 = Unknown
x = 扩展名,3字符 ( 固定的,始终是:FNT)
a = 字体旋转
    缺省值: N = 不旋转
    其他值: R = 90,
I = 180,
B = 270
    目前仅支持N。
h = 最大单元的高度(点)
w = 最大单元的宽度(点)
base = 单元项的点到字符基准线
space = 空的宽度或字间距
#char = 字体字符数(这必须在下载字符数已做)
© = 版权者(最大文本串长度是63字符)
DATA = ASCII数据结构定义字体每个字符。#符号表示字符码参数被分隔。字符码是1到4允许国际字符集下载到打印机。
    数据结构是
  #××××.h.w.x.y.i.data
   
#×××× = 字符代码
h = 点阵高度(点)
w = 点阵宽度(点)
x = x方向(点)
y = y方向(点)
i = 排版移动替换(宽度包括字体字符间的间隙)
data = 十六进制点阵描述

 

^DD 下载直接点阵

  ^DD(下载直接点阵)命令下载一个点阵到打印机,直接打印,并不保存在内存中。
  注:参见~DG(下载图形),可得到更详细的关于如何计算本命令的参数的资料。

~DD的格式:
  ~DD,a,b,DATA

 

^DD

= 下载直接点阵

a

= 图形的字节总数
    默认值:没有-如果没有指定本参数,整个命令将被忽略。
其他值:相应的图形大小的字节数。
范围:1到99999。超出范围时设为最接近的上下限值。
b = 每行字节总数
    默认值:没有-如果没有指定本参数,整个命令将被忽略。
其他值:相应的图形大小的字节数。
范围:1到99999。超出范围时设为最接近的上下限值。
DATA = 定义图像的十六进制的ASCII字符串
    CR和LF可以加在需要的地方。每个字节用两位ASCII码来表示的数字对必须和前面所指定的数据相符,超过指定数据的数据将被忽略。逗号将置当前行为空行(用00填充),这样就可以使你减少传送数据。~DN命令或其他~命令将会中断下载。
默认值:没有,必须指定
范围:00到FF

 

 

~DE 下载编码

  标准的Windows TrueType字体的编码是Unicode。因此,ZPL字段数据必须将其他编码转换成Unicode。它需要用^DE(下载编码)命令下载一个对照表。这些表由Ztools for Windows提供。
  目前,字体转换只支JIS和Shift-JIS到Unicode。

~DE的格式:
  ~DEn,s,DATA

 

~DE

= 下载极大的Unicode TrueType的编码表。

n

= 表名
    默认值:没有名字 =本命令被忽略
其他值:输入一个带标识符的目标设备的表名(最大为8位长度)
目标设备的标识符:
R:= RAM 内存
B:= 内存卡
s = 表的大小
    默认值:没有数值 = 本命令被忽略
其他值;输入所占内存的字节数
DATA = 数据串
    默认值:没有数值 = 本命令被忽略
其他值:用ASCII码表达的HEX值(2HEX/字节)
2位的数值必须匹配表的大小。(一个字节数不足的数值会使整个命令被忽略)

例子:
  ~DER:JIS.DAT,27848,300021213001...
  (27848个2位的HEX值)

 

^DF 下载格式

  ^DF (下载格式)命令以文本格式保存ZPLII格式指令,以后可以用^XF加上变量来调用。保存的格式中可以包含字段数(^FN),以便将来参考调用。
  将格式保存节省了传输时间,但并没有节省格式化时间,因为ZPL II是作为文本串保存的,在打印时仍须进行格式化。
  如果忽略映象名,默认的名称和扩展名为UNKNOW.ZPL。在^XA后马上输入^DF指令,输入的格式指令就会被保存起来。

  注:一个包含^DF的格式不会被打印出来。

^DF命令的格式
  ^DFd:o.x

 

^DF

= 下载和保存格式

d

= 保存映象的目标设备名 (固定,永远为DRAM R:)
o = 映象名,1到8个字母或数字(默认的名字为UNKNOW)
x = 扩展名,3位字母或数字(永远是.ZPL)

以下有一个使用^DF的示范,它将ZPLII文本字串保存到DRAM中,保存的文本串叫STOREFMT.ZPL。

^XA
^DFR:STOREFMT.ZPL^FS
^FO25,25^AD,36,20^FN1^FS
^FO135,25^AD,36,20^FN2^FS
^FO25,75^AB,11,7^FDBUILT BY ^FS
^FO25,100^AD,18,10^FN1^FS
^XZ

 

~DG 下载图象

  ~DG(下载图象)执行以下功能。

  1. 置打印机为图象模式。
  2. 命名图形。(这个名字将用来在标签中调用)
  3. 定义图象尺寸
  4. 下载十六进制字符串到打印机

注意:

  1. 为使打印机明白,使用图形名时将以空格、句点、或扩展名结束
  2. 避免偶然被空格替换,不要在图象名中用空格。不同图象用不同名字。
  3. 如二个图象用了同一名送到打印机。第一个图象被删除而由第二个图象代替。

~DG指令格式
  ~DGd:o.x,t,w,DATA

~DG

= 设置打印机为下载图形模式

d

= 贮存图象的目标设备。
    缺省值:R: (DRAM)
其它值:B: (内存选件)
o = 图象名,1-8字符,
    (缺省时,用UNKNOWN作字体名)
x = 扩展名,3字符 ( 固定的,始终是:GRF)
t = 图象总的字节数
w = 每行字节数
DATA = ASCII十六进制串图象定义

  如目标名省略,就用UNKNOWN.GRF作为字图象名。数据串使用ASCII十六进制串图象定义,每个字符表示水平方向的四个点。

  以下是一个用~DG指令加载图象到DRAM的例子。贮存图象名叫SAMPLE.GRF。

~DGR:SAMPLE.GRF,00080,010,
FFFFFFFFFFFFFFFFFFFF
8000FFFF0000FFFF0001
8000FFFF0000FFFF0001
8000FFFF0000FFFF0001
FFFF0000FFFF0000FFFF
FFFF0000FFFF0000FFFF
FFFF0000FFFF0000FFFF
FFFFFFFFFFFFFFFFFFFF

参数t(图形总字节数)用以下公式计算:
  X (毫米)×打印机分辨率(点/毫米) ×  Y(毫米) ×打印机分辨(点/毫米)/8(点/字节)=   总字节
  X 是单位毫米的图象宽度。Y是单位毫米的图象高度。点/毫米打印机编程的打印分辨率。
  例如,确定图象8毫米宽,16毫米高,打印分辨率8点/毫米的正确t参数其公式是:
  8×8×16×8/8=1024字节

 

参数w(每行字节数)用以下公式计算:
  X (毫米)×打印机分辨率(点/毫米) /8(点/字节)=   每行字节数
  x是单位毫米的图象宽充,点/毫米是打印机偏移打印分辨率。
  例如,确定图象8毫米宽,打印分辨率8点/毫米的正确w参数,其公式是:
    8×8/8 = 8字节

注意:

  1. 所有字节中一行的字节
  2. w是t参数计算的第一个值

  参数是一串十六进制数作为图象表示送打印机。每一十六进制字符代表水平方向四个点。如图象前四个点是白的,后四个点是黑的。二进制码的点00001111。十六进制表示二进制值将是OF。完整的图象码就是这样。完整图象被送打印机是一长连续十六制值。

  对~DG和~DB指令选择数据压缩方案。
  斑马打印机有一数魏数据压缩方案。在~DG和~DB指令中这方案减少下载图象和点阵字体实际数据字节数和总的时间。
  下面数1,2,3,4,5,……19代表在后面十六进制值(注:值从G开始O到O和A到F已经在十六进制值是使用)

G H I J K L M N O P Q R S T U V W X Y
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

  例如,送M6到打印机表示如下十六进制数据。
    6666666

  M的值是7,所以传送7个十六进制的6

g h i j k l m n o p q r s t u v w x y z
20 40 60 80 100 120 140 160 180 200 220 240 260 280 300 320 340 360 380 400

  例如:送-hB到打印机表示送十六进制数据  

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
40

  h值是40,所以传送40 个十六进制的B。

重复值

  几个重复值一起使用得到任何需要值,“vMB”和“MvB”一样,都是传送327个十六进制的B到打印机。

把逗号(,)填进行,表示该行右边,都是0,
感叹号(!)填进行,表示该行右边都是1,
冒号 (:)表示重复上一行。

  解码和参数t字节数打印后,打印机返回原来的打印模式。

减少下载图象时间

  当用~DG指令时,这方法减少实际送打印机的数据字节数,在下面图6.1和6.2可看到。

  在图6.2,如果十六进制串都是到零(0)结束。一个逗号(,)可以替代所有的零。如果十六进制串是奇数个0结束,需加一个零和逗号。感叹号(!)和冒号(:)在用法如前。

  警告:在你编辑器文本行将不同于ZPLII点的行。编辑器将字把点行包裹起来。ZPLII跳过文本行结束(如:回车和换行字符)。

  注:在图6.1和6.2回车已经被插入每个点行的结束。

 

 

~DN 取消下载图象

  ^DG在解码和打印完参数t的字节后,打印机返回一般模式。用~DN(取消下载图象)指令。图象模式可以取消原来打印操作恢复。

~DN指令格式
  ~DN

~DN:取消下载图象

注意:任何^或~指令将结束下载。

 

 

~DS 下载曲线字体

  ~DS(下载曲线字体)指令是用于设置打印机接收下载曲线字体和定义字体尺寸的字节数。
  ~DS命令和所需参数,转换用户输入字体结果到斑马打印机。这转换用斑马应用程序工具称为ZFONT。斑马公司有此应用程序。

~DS命令的格式
  ~DSd:o.x,s,DATA

 

~DS

= 设打印机接收下载曲线字库

d

= 贮存图象的目标设备。
    缺省值:R: (DRAM)
其它值:B: (内存选件)
o = 字体名,1-8字符,
    (缺省时,用UNKNOWN作字体名)
x = 扩展名,3字符 ( 固定的,始终是:FNT)
s = 字库长度的字节数,这数字由ZFONT程序产生,不能被改变。
DATA = ASCII十六进制字串的字体定义。
    数据由ZFONT程序产生。不会被改变。

  以下是转换曲线字体前三行下载到打印机例子。如有需要源和目标设备名可以被改变。

~DSB:CGTIMES.FNT,37080,
00FF00FF00FF00FF
FF0AECB28FFF00FF

注:下载曲线字体不能进行完整性检查。如被损坏,打印机将产生无法产生预料的结果。

 

 

~DT 下载TrueType字体

  必须用Ztools for Windows 来转换TrueType 字体为斑马打印机的可下载格式。这个程序建立一个含有~DT(下载TrueType字体)的命令,一旦下载完毕,字体将象其他软件一样使用。

~DT命令的格式
  ~DTf,s,DATA

~DT

= 下载曲线字库

f

= 字体名
    默认值:没有名字 = 本命令将被忽略
其他值:在目标设备后输入TrueType字体名。(最长8位)
目标设备:
R: = RAM 内存
B: = 内存卡
s = 字体长度的字节数,
    默认值: 没有 = 如果没有,本命令将被忽略
其他值:输入字体的斑马可下载格式所需的内存的字节数。
DATA = ASCII十六进制字串的字体定义。
    默认值 :没有,本命令将被忽略。
其他值:用ASCII表示的十六进制数。(2位字符/字节)
必须匹配参数S所给的值,否则,本命令将被忽略。

例子:

~DTR:FONT,52010,00AF01B0C65E......(52010个2位的HEX值)

 

~DU 下载极大的TrueType字体

  有一些国际字体超过了256个可打印字符,这些字体是用~DU来下载到打印机,作为大TrueType字体来使用的。
  字段块(^FB)命令不支持大型TrueType字体。

~DU命令的格式
  ~DUf,s,DATA

~DT

= 下载大型曲线字库

f

= 字体名
    默认值:没有名字 = 本命令将被忽略
其他值:在目标设备后输入TrueType字体名。(最长8位)
目标设备:
R: = RAM 内存
B: = 内存卡
s = 字体长度的字节数,
    默认值: 没有 = 如果没有,本命令将被忽略
其他值:输入字体的斑马可下载格式所需的内存的字节数。
DATA = ASCII十六进制字串的字体定义。
    默认值 :没有,本命令将被忽略。
其他值:用ASCII表示的十六进制数。(2位字符/字节)
必须匹配参数S所给的值,否则,本命令将被忽略。

例子:

~DTR:KANJI,86753,60c0ca017b0ce7......(86753个2位的HEX值)

 

^EF,~EF 初始/擦除贮存格式

  ^EF或~EF(删除格式)指令删除所有贮存格式。如你使用删除格式指令你将删除所有保存的格式。(保存格式可以用^ID指令选择删除)

^EF或~EF指令格式
  ^EF或^EF

^EF,^EF

= 删除格式

 

 

^EG或~EG 从DRAM中删除所有图象

  ^EG或~EG(删除下载图象)指令是用于从DRAM中删除所有图象(标签格式图象和十六进制图象)

~EG或^EG指令格式是

~EG或^EG

~EG,^EG

= 擦除下载图象

 

^FA字段分配

  用^FA(段分配)指令分配字段存贮空间

^FA指令格式
  ^FAn

^FA

= 段分配
n = 被存贮字符数字空间
    缺省值:没。如无指定值指令跳过
最小 = 1,最大 = 256

版本14.4.0,15.4.0,20.4.0,23.6.0,25.6.0中有效:
最大值为3072

 

 

^FB字段块

  ^FB(段块)指令允许你在一个定义摽槔嘈蛿格式中打印文本。这指令格式^FD文本串放在一指定带原点,字体,和旋转文本块中。这指令也包含一个自动的字回绕功能。

^FB指令格式
  ^FB a, b, c, d, e

^FB

= 定义段块
a = 文本块行点的宽度。
    有效数据: 最小 = 一个字符的宽度。
最大 = 标签宽度。
    缺省值 :=0
许可值:0~9999
注:值如小于字体宽度或不对,文本块将不打印出来。
b = 文本块最大行数
    缺省值:1行
许可值:1到9999
注:文本最大行数将复盖上次行数。改变字体尺寸将自动增加或减少块尺寸。
c = 增加或删除行间点的空区
    缺省值:=0
许可值:-9999到+9999
注:如前面没有负号,数字认为是正数。正值加空区;负值删空区。
d = 块内文本对齐
    缺省值 = L(左)
许可值:L(左),C(中心),J(边到边)和R(右)
注:如用“J”,最后一行为左对齐。
e = 第二左边。点的宽度,第二行和以后所有有行文本块将被缩进。
    许可值:0-9999

  以下是一个^FB指令数据段结果的例子。

 

  注意^FB指令的一些注意事项

  以下组合有特殊意义:

“\&”

=

回车/换行

“\(*)”

=

软连字号(单词断开时使用),如果连字符放在一行的最后,它会被打印出来,如果它不是在在一行的最后,将会被忽略。(在^B7中忽略)

“\\”

=

字符\,(注意必须选择^CI13 ,使它能打印 \)

  第一条:要打印一个\必须使用^CI13进行国家代码选择。
  第二条:如软连字符接近一行的最后,该连字符将被打印。如不放在最后一行附近,它将被跳过。

(*) 表示任何字母/数字字符。

  • 如果一个字在一行太长(没有软连字符),一个连字符将自动放在块的左字上。剩下字将放在下行。(连字符的位置取决于字长度而不是音节边界,放置一连字符表示连字符就会出现该单元)
  • 最大数据串长度是3K包括控制字符和回车/执行
  • 通常回车/换行和词间隙在行断时被放弃
  • 当用^FT(段排版)----^FT是用文本上行基准线增加字体尺寸将使文本块从底到顶尺寸增加(可使打印超过标签顶)。
  • 当用^FO(字段原点)增加字体大小将使文本块从顶到底尺寸增加
  • 如果^SN替代^FD,字段将不打印。
  • ^FS结束^FB语句,每个块要求有自己的^FB指令

 

^FD 字段数据

  ^FD(字段数据)指令定义字段的数据串。字段数据可以任何可打印字符除了那些指令前缀(如^和~)。

^FD指令格式
  ^FDa

^FD

=

输入字段数据

a

=

打印数据

注意:

  1. 字段数据串最多3072字符
  2. ^和~字符可以改变前缀字符而打印出来。见CC和CT指令(注:新的前缀字符不能被打印)
  3. 字符ASCII码超过127时或者用^FH和^FD打印^和~字符。

版本V14.4.0,15.2.1,20.4.0,23.6.0,25.6.0有效:

过去,在^FD中的字符都是CR/LF都是被忽略的,然而在^B7(PDF417条码)和^FB(字段块)命令中,所有^FD中的CR/LF都成为有效字符,

以上^FD语句里CR/LF(回车/换行)是被跳过。在^B7(PDT417码)和^FB(段块)指令时。CR/LF在^FD指令里是合法字符。

用以下办法完成指定的功能。

“\&”

=

回车/换行

“\(*)”

=

软连字号(单词断开时使用),如果连字符放在一行的最后,它会被打印出来,如果它不是在在一行的最后,将会被忽略。(在^B7中忽略)

“\\”

=

字符\,(注意必须选择^CI13 ,使它能打印 \)

(*) = 任意字母/数字

注意:

  1. 要打印 \,必须选择^CI13
  2. 如果软连字符置于一行的最后,连字符会被打印出来,但如果没有放在一行的最后,它将会被忽略。

 

 

^FH 字段的十六进制表示

  ^FH(十六进制段)指令允许你在^FD语句里直接输入任何十六进制值。^FH指令必须在每个^FD指令前才能用。
  在^FD语句里,十六进制标识必须在每个十六进制值前。缺省的十六进制标识是下划线(_)。
  这指令可以用在任何有数据段的指令里,(如^FD,^FV(段变量),和^SN(串行数据))。
  有效的十六进制字符是
    0 1 2 3 4 5 5 7 8 9 A B C D E F a b c d e f

^FH指令格式
  ^FHa

^FH

=

字段十六进制形式

a

=

十六进制标识
    开机初始化值 =_ (下划线)
其他许可值:除了当前格式前缀或控制前缀的任何字符。

例:

^FO100,100^AD^FH^FDTilde_7e Used for HEX^FX
^FO100,100^AD^FH^FDTilde \7e Used for HEX^FX

以上二行将产生以下结果

Tilde ~ used for HEX

 

 

^FN  字段编号指令。

  ^FN(数字段)指令用于数据段数字。这指令用于贮存格式和调用格式操作。
  在贮存格式,^FN指令用在正常的^FD(数据段)指令的地方。在调用贮存格式时,用^FN结合^FD(数据段)指令。

^FN指令格式
  ^FNx

^FN

=

字段编号

a

=

字段所赋的编号值
    缺省值:0
其它值:最小=1,最大=9999

注意:

  1. 同一^FNx值可被贮存在几个不同段里。
  2. 如一个标签格式包含一个^FNx和^FD,段的数据将用任何其它同^FN的值打印。

 

^FO  字段位置

  ^FO命令设置字段的位置,相对于由^LH命令指定的标签原点。^FO命令设置字段的左上角的位置。

^FO命令格式:
  ^FOx,y

^FO

=

设置字段位置

x

=

X轴的点数
    缺省值:0
许可值:最小=1,最大=9999

y

= Y轴的点数
    缺省值:0
许可值:最小=1,最大=9999

注意:如果x,y的值太大,它将置打印位置于标签之外。

 

^FP字段参数

  ^FP(字段参数)命令增加到ZPLII中是为了支持Kanji字符集。这个命令旋转字库而不用在字段中旋转字符。

^FP指令格式
  ^FPd,g

^FP

=

字段参数

d

=

方向
    H  =  水平打印
V  =  垂直打印
版本14.8.0,18.8.0.21.8.0,23.8.1,23.8.2,25.8.2,22.8.5中有效:
R  =  反相打印(从右向左)

g

= 另加的字间距
    范围:0-9999

  注意:使用反相打印时,^FT所指定的位置是最右边的字符的左下角。

示例:
^XA^FPV,10^AG^FDtest^XZ
^XA^FPR,10^AG^FDtest^XZ

 

^FR字段反相打印

  ^FR(颠倒打印段)指令允许出现的段白变黑或黑变白。打印字段时,如打印点是黑则变白,如点是白则变黑。

^FR指令格式
  ^FR

^FR

颠倒打印段

  以下是怎样使用FR指令的例子。

^XA
^FO100,60^GB100,203,203^FS
^FO180,100
^CFG^FR^FDFIELD^FS
^FO130,170
^FR^FDREVERSE^FS
^XZ
 

注意:

  1. 这些字段位图是放在格式指令指定段点阵里,在标签格式中用^FR指令超过一次时须当心。
  2. ^FR指令的结果 不会在另一个字段出现(如,文本后跟^FR^GB)如以上例子。

 

^LR颠倒打印标签

  ^LR(颠倒打印标签)指令颠倒在标签格式中印有打印段。它允许一个段由白变黑或由黑变白。当打印一个段,如果打印点是黑的,它变白;如果点是白的,它变黑。
  用^LR是等同于用^FR在印有当前和分区内的。

^FR指令格式
  ^LRa

^LR

=

颠倒打印标签

a

=

颠倒打印
    缺省值:N=不反相打印标签
其他值:Y=是
开机初始值=N
(如无参数指令跳过)

以下是怎样用^LR指令的例子。

注意

  1. ^LR将保留到^LRN指令转换或)打印机关机
  2. ^LR指令结果是不到直到一个段重叠如上面例子所示。
  3. 仅仅在这指令后的段被影响。                                                                                                                                                                                       
  4. ^FS字段分隔

      ^FS(段括号)指令表示字段定义结束。段括号指令可以用一个简单ASCII控制码SI(Ctrl-O, 十六进制OF)代替。

    ^FS指令格式
      ^FS

     

    ^FT字段排版

      ^FT(段排版)指令也是设段位置,和标签起始^LH命令关系。字段位置在旋转时不改变,段排版原点是被固定。

    ^FT指令格式
      ^FT x, y

    ^FT

    =

    字段排版

    x

    =

    x方向点数
        缺省值:=上次格式段位置
    许可值:0~9999

    y

    =

    y方向点数
        缺省值:=上次文本格式段位置
    许可值:0~9999

      以下定义^FT怎样在文本条码,图象,框,镜像时工作。

    • 文本──原点是字符串起始,压字体的基准线。一般基准线在大多数字符底部,除了那些下行字符如“g”,“y”等。
      注:当座标缺失时,位置被跟着上次格式字段。这种记忆功能将使字段和其它字段位置简单化。当第一个段被定位,其它段跟着自动定位。
    • 条码──原点是条码的基准点,如有条码下面解释行,或条码有防护条时也是。
    • 图框──原点是在杠的左下角。
    • 映象──原点是在矩形镜象左下角。

    重要注意

    有几个例子,当用^FT指令时,最好使用a和b参数。

    1. 标签格式第一个段定位
    2. 任何^FN(段数字)指令
    3. 顺序^SN(串行数据)指令

     

     

    ^FV可变数据段

      ^FV(可变数据段)指令替换在标签格式中可变的数据段^FD(数据段)指令:

    ^FV指令格式
      ^FV

    ^FT

    =

    可变数据段

    a

    =

    被打印的可变数据段。0-255个字符[如无数据输入指令跳过]
        版本14.4.0,15.4..0,20.4.0,23.6..0,25.6.0中有效:
    最大字符串长度=3072

      以下是怎样用^MC和^FV指令的例子。

    ^XA
    ^FO55,60^FVVARIABLE DATA #1 ^FS
    FO80,150^FDFIXED DATA^FS
    ^MCN^XZ
    VARIABLE DATA #1

    FIXED DATA

    ^XA
    ^FO55,60^FVVARIABLE DATA #2^FS
    ^MCY2
    VARIABLE DATA #2

    FIXED DATA


      注意:^FV段在标签打印后始终被清除

    ^FW字段方向

    以后再译

    ^FX注解

    ^FX(注释)指令是非常有用,当你要在标签格式中加入摲谴蛴信息注解。任何^FX指令后的数据到下一脱字号(^)或否定号(~)指令间在标签格式中无任何结果。

    ^FX指令格式

    ^FX < data >

    ^FX=注释

    < data > = 摲谴蛴指令解释或改

    以下怎样用^FX指令的例子:

    注:通常做法是在数据后跟^FS指令。

     

     

     

     

     

     

    理解^FO和^FT指令

    FO是定义打印在左上角。FT是定义打印在左下角。

    ^FO和^FT指令段位置和起点位置^LH指令有关系。而排版原点^FT在不同旋转时段基准不改变,段原点^FO在不同旋转时,段区域不改变。

    以上是^FO不同于^FT在颠倒时的例子。

    注:^FT可以容易地用在旋转段,设旋转时,只需计算段起始位置。许多字体摷涓艨涨鴶使字串长度^FO定位计标困难。^FT定位允许各种长度几个段撈鹗紨在同上位置。

    以下是一些怎样用^FO,^FD,和^FS指令例子。

    用^FO,^FD和^FS例子1

    注意^FO和^FD的值

     

     

    用^FO,^FD和^FS例子2

    注意^FO和^FD在标签上的改变。

    介绍装置名

    ZPLII目标(图像镜像,标签格式,下载字体等)被分配到各种装置名的存贮区内。装置名被标识DRAM,RAM,DPROM等。允许贮存,调用拷贝,删除,ZPLII目标进/出指定区域。

    每一个这样的区被分配一个标识的装置名,装置名是用下列一个单个字母表示。定义是:

    R:打印机DRAM(读/写)

    B:附加内存(一个卡或工厂安装)

    E:外加EPROM贮存目标(只读)

    Z:内部ZPLII贮存目标库(只读)

    几个ZPLII指令用这装置名。装置名对大多数ZPLII指令是一个附加参数。缺省值被个别ZPLII指令定义。

    建立和删除目标缺省是打印机DRAM。调用目标搜索用过的是DRAM,RAM外加EPROM,内部ZPLII(R:,B;,E:,Z:,*或?(所有))。

    ZPLII目标名和扩展名介绍

    每个ZPLII目标(图象镜像,标签格式等)必须一个名。这名将包含两个部分。一个目标名一一个扩展名。目标名可以1~8个字符长度。扩展名由3个字符组成。目标名和扩展名的约定和MS桪OS文件名和扩展名约定相同。

    几个ZPLII指令用这些目标名。目标名不能缺省必须输入。扩展名可缺省定义如下。ZPLII指令中,如扩展名没有,不完全,不正确将用缺汔。定义ZPLII目标名扩展如下所述。

    .ZPL ZPLII标签格式(^DF或^XF)

    .FNT 斑马格式字体(^DB, ^DS或^XA)

    .GRF 斑马桌陈格式(^DG,^IS,^IL,^XG或^IM)

     

     

    2──25

    ZPLII指令中,目标名和扩展名可用星名(*)和问号(?)替代。

    ZPLII指令用装置和目标名

    ZPLII指令支持友数名的装置名和目标名在前一页已描述了。

    这些指令是

    ~DG 下载图象

    ^XG 调用图象

    ^IS 图象贮存格式

    ^IL 加载镜像

    ^DF 文本贮存ZPLII格式

    ^XF 调用ZPLII格式

    ^ID 镜像删除

    ^HW 主目录例表

    ^WD 打印目录

    ~DB 下载点阵

    ~DS 下载大量字体

    参数名的组成由1到8个字符组成,装置名跟着目标名和扩展名在个别指令里缺省与/或用星号(8)和问号(?)替换定义。

    2──26

    定义和使用AUTOEXEC.ZPL功能

    打印机支持AUTOEXEC.ZPL文件功能。它的功能和MS-DOS中AUTOEXE.BAT文件方法相同。它可以用于打印机开机时设置各种参数(如^COY, ^LL, ^CWN等),它也可以在开机后任何时候调用。

    这文件必须在外加EPROM中初始化。当打印机开机,它寻找外加EPROM中贮存格式调用AUTOEXEC.ZPL。它找到后,文件内容贮存格式被自动执行。

    用电池驱动字体卡

    ^JB(复位坏电池)指令有如两个条件。

    1) 如电池供电的电池驱动字体卡失效或被更换。这指2) 令必须送打印机复3) 位。(电池坏将在配置表中显示摰绯鼗禂)。

    注:如电池被更换而这指令不送打印机。电池驱动字体卡将没作用。

    4) 需要清除(重初始化)电池驱动字体卡。

     

     

     

    3──1

    打印机配置

    在多数情况下,打印机可以通过面板或各种ZPLII指令配置。一个配置指令被打印机接收,通常将改变当前标签格式和以后任何标签格式,直到打印机被关掉。下一标签打印反映在新的指令里。

    本节将讨论怎样用ZPLII打印机配置指令。以下是这些指令的制表。

    ^MM(打印模式)?设置打印机到四种基本模式之一,撕断,回线,剥离和切刀。

    ^MT (受热纸型)?设置打印机为热敏纸或热转移纸。

    ^MD(标签深度)?调整打印机深度也即是调整打印机摲⑷任露葦。

    ^LT (标签顶)?转换打印从当前标签起点位置向上或向六十四个点。

    ^SS (设标签传感器)?允许用户复盖行有已建立标签外貌内部值。

    ^MP(禁止模式开关)?用于禁止面板深度,位置和校准模式(仅在STRIPE打印机

    有效)。

    ^JZ(出错重打)?由于错误条件打印不完全或不正确重打标签。

     

     

    3──2

    ^JV(配置更新)?允许用户保存当前设置

    ^SZ(设ZPL)?允许用选择ZPL或ZPLII编程语句。

    打印机配置指令必须有一有效的参数。错的或无效参数指令全被跳过。当打印机配置指令被输入,它将一直有效直到打印机关机或不同参数指令又输入时才改变。

    如果你要保存你已修改的,有两个方法可做。

    1) 输入指2) 令到打印机后,3) 按面板SETUP/EXIT健两次。SAVE CHANGES PERMANENT显示在液晶显示器上。(你需按一个黑色随圆键直到PERMANENT显示)按NEXT键。字SAVING PERMANENT和PRINTER READY先后显示。你的改变已被贮存。

    4) 用^JVS指5) 令

    仅对STRIPE打印机

    1)当指令被输入打印机,按面板上MODE键器(4)次,然后按PAUSE键(顺序

    通过MODE操作直到仅PAUSE灯亮)

    2)用^JUS指令

     

    打印模式

    ^MM(打印模式)指令是确定一张或一组标签已被打印后打印机的动作。有四种不同操作模式。

    1) Tear Off?打印后,2) 标3) 签空区进到撕板上,4) 标5) 签连着底纸,6) 可以用于撕下。

    7) Rewind?标8) 签和底纸被回绕在一个(附件)外加回绕装置,9) 下一张标10) 签定位在打印头下(无回送动作)。

    11) Peel Off?打印后,12) 部分标13) 签从底纸上被分离。打印停止直到标14) 签被取走。底纸被绕在只绕底纸的回绕轴上(注:选用回绕轴已装在打印机内)。

    15) Cutter?隔着空区打印的和下一标16) 签被送进切17) 纸器,18) 标19) 签切20) 下。标21) 签被控回进打印机继续打。

    ^MM指令格式

    ^MM=打印模式

    x = 要求模式

    T = 撕下

    R = 回绕

    P = 剥离

    C = 切刀

    A = 保留

    (如参数错或不正确指令跳过)

    I. V. P = 上次被贮存参数值

     

     

     

    3──4

    ^MM(纸的类型)指令告诉打印机行选用纸的类型(连续或不连续)这指令里有二个选择。

    1) Continuous Media ?这纸没有物理标2) 识(如:空区,3) 槽,4) 孔剥分离标5) 签,6) 标7) 签高度由^U指8) 令决定(在P2桺9页描述)

    9) Non-Continuous Media 椪庵接形锢肀?0) 识(如:空区,11) 槽孔等)分离标12) 签

    ^MN指令格式

    ^MN x

    ^MN = 纸类型类

    x = 行用纸

    Y = 非连续纸

    N = 连续纸

    (如参数错或不正确指令跳过)

    I. V. P = 上次被贮存参数值

     

     

    3──5

    ^MT(纸种类)指令选择打印机行用纸的种类。这指令里有二种选择

    1) 热转印纸 ?这纸用黑炭或彩色色带,2) 色带上油墨被烧在纸上。

    3) 热敏纸 ?纸被志应上热而4) 不5) 需通常

    ^MT指令格式

    ^MT x

    ^MT = 纸种类

    x = 厅用纸

    T = 热转印纸

    D = 热敏纸

    (如参数错或不正确指令跳过)

    I. V. P = 上次被贮存参数值

     

    ^MD(标签深度)指令调整与当前设定深度的关系,最小值 -30,最大30。

    ^MD指令格式

    ^MD x

    ^MD = 标签深度

    x = -30 to 30取决于当前值(正号不要求输入?敽牛?

    (如参数错或不正确指令跳过)

    I. V. P = 0

    ^MD指令格式

    如当前值(配置表上值)是16,输入指令^MD-9将减和至7。

    如当前值(配置表上值)是1,输入指令^MD15将减和至16。

    如当前值(配置表上值)是25,输入指令^MD-9将减和至30。

    至允许的最大值

    注:每个^MD指令是相对于当前值(配置表上值)是分开等待。

    例如:如果有两个^MD-6指令被接收改变当前值到9,另一指令^MD2被接收,当前值被改到17。两个^MD指令都是以当前值15计算的。

    标签顶位置

    ^LT(标签顶)指令从当前标签顶位置移动输入标签格式上下最大64点行。负值移向标签的顶部。正值远离标签顶部。

    这指令用于完成标签适当位置,而不改变任何已有参数。

    注:这指令不改变标签起始位置。

    ^LT指令格式

    ^LT x

    ^LT = 标签顶

    x = -64 to 64行(正值不要求输入?敽牛?

    (如参数错或不正确指令跳过)

    I. V. P = 上次被贮存参数值

    设标签传感器

    ^SS(标签传感器)指令是用于改变在摫昵┬W紨过程被设标签,空区,色带和标签长度值(摫昵┬W紨处理在用户掼撆渲玫接τ脭章节里详述)以下是阐述标签传感器图形的例子。注意数字从000到100和词WEB,MEDIA和RIBBON出现在那些数字的关系。并注意黑色垂直峰值。这代表打印机感受到运动从标签到空区到标签。

    注:标签和传感器图形产生在你的打印机上可能和这里看到的不同。

    ^SS指令格式

    ^SS w, m, r, l, m2, r2

    ^SS = 设标签传感器

    w = 空区的3位数值(000到100)

    缺省值;显示在标签传感器图形或配置表上。

    m = 标签的3位数值(000到100)

    缺省值;显示在标签传感器图形或配置表上。

    r = 色带的3位数值(000到100)

    缺省值;显示在标签传感器图形或配置表上。

    l = 标签长度点的4位数值(0001到9999)

    缺省值;值计算由撔W即頂。(参见配置表)

    m2 = 标签发光管强度的3位数值(000到100)

    缺省值;值计算由撔W即頂。(参见配置表)

    r2 = 色带发光管强度的3位数值(000到100)

    缺省值;值计算由撔W即頂。(参见配置表)

    I. V. P = 上次被贮存参数值

    注:搈2敽蛽 r2斨刀詓tripe打印机无效

     

     

     

     

     

    注:这指令仅用在STRIPE打印机

    ^MP(模式保护)指令用于禁止各种面板MODE功能。当禁止后,这模式功能不能被改变而指示灯联系的灯也不亮。

    这指令仅有一个参数。每个模式禁止需分别用^MP指令。

    ^MP指令格式

    ^MP x

    ^MP = 模式保护

    x = 模式保护

    缺省值:不改变

    其它按变值:

    D = 禁止深度模式

    P = 禁止位置模式

    C = 禁止校准模式

    E = 允许所有模式

    S = 禁止所有模式贮存(模式可以调整但不能被贮存)

    (参数错或不正确指令跳过)

    ^MP指令例子

    禁止浓度和校准模式,必须送打印机如下:

    ^XA ^MPD ^MPC ^XZ

     

     

    3──11

    现错重打

    ^JZ(出错重打)指令用于重打因色带完,标签完,或打印头打开等不完全打完标签。当错误条件被排除标签重打。

    这指令将得持到另一^JZ指令送到打印机或打印机被关^JZ指令格式

    ^JZ指令格式

    ^JZ = 出错重打

    x = 出错重打

    Y = 是 I. V. P.

    N = 不

    (参数错或不正确指令跳过)

    ^JZ指令改打印机出错模式(如^JZ被改变,仅对改变后标签起作用)。

     

     

    3──12

    配置更新

    ^JU(配置更新)指令设置改变打印机配置

    这指令中有三个选择,定义如下,

    S = 贮存当前设置

    当前配置将被贮存,这配置将被用在开机时

    F = 加载工厂值(缺省)

    工厂值(缺省值)将被加载

    (这值如不用^JUS指令贮存在关机时将丢失)

    R = 取上次贮存值

    上次用^JU指令或从面板mode贮存的值将被加载

    ^JU指令格式

    ^JU x

    ^JU

    x = 配置改变

    F = 加载工厂(缺省)

    R = 取上你贮存值

    S = 贮存当前值

    (参数错或不正确指令跳过)

     

     

    3──13

    设ZPL

    ^SZ(设ZPL)指令是用于选择打印机使用的程序语句。这指令给你选ZPL或ZPLII打印标签格式。

    这指令将保持到另一^SZ指令送到打印机或打印机关机

    ^SZ指令格式

    ^SZ a

    ^SZ = 设ZPL

    a = 设ZPL

    1 = ZPL

    2 = ZPLII

    I. V. P = 上次被贮存参数值

    (参数错或不正确指令跳过)

     

     

    3──14

    启动用户配置格式

    启动配置格式等节约大量时间,大多数打印机只用一至二种标签。你可针对标签容易做出标签格式。

    如你需要改变各种指令打印特殊标签。当你换完标签后改变适当配置格式。

    取决于你特殊的应用,下表指令可以加入配置表内。

    ^XB 抑制回送

    ^PR 打印速度

    ^LL 标签长度

    ^MM 打印模式

    ^MT 受热纸型

    ^JZ 出错重打

    ^SS 设标签传感器

    ^MD 标签深度

    ^MN 标签深度

    ^JV 配置更新

    ^SZ 设ZPL

    注:像许多格式配置一样,当你需要时给出不同名字指令送到打印机。

     

     

     

    4──1

    标签文本

    在斑马打印机上打印标签文本,必须选择一个以上打印字体。文章讨论可用打印字体和ZPLII指令

    斑马字体

    大多数斑马打印机有标准8位点阵字体和一字体表。另外允许下载点阵和字体表字体。

    字符尺寸和密度(出现深度)取决于打印头和所用标签。三种不同打印头可用6点/mm,8点/mm和12点/mm。

    内部点阵字体可被按原尺寸(缺省)放大2到10们。放大因子是整数,所以如果原尺寸点阵是9点高和5点宽。放大因子是3产生的字符27点高和15点宽。高和宽可被单独放大。

     

     

     

    4──2

    理解点阵字体的放大因素

    本章大多数指令包含参数有输入打印字符高和宽。输入是点的值。当输入点阵字体值用以下公式计算。

    基本高度×放大因子=高度参数值。

    (同样原理计算宽度)

    例子:

    基本点阵长是9点

    基本点阵宽是5点

    放大3倍字符

    高度参数27

    宽度参数15

    注:结果正确,必须使用参数正确,见表4.1到4、5、在P4?到P4?0页。

    国家符号指令

    ^GS(图象符号)指令不允许你产生注册商标和版权符号,图象符号格式指令是。

    ^GS=图象符号

    a = 字体方向

    缺省值:N=不转或上级^FW值

    其它值:

    R=顺时针90度

    I=颠倒180度

    B=反转,270度

    b=字符点高度

    缺省值:上次^CF值

    c=字符点宽度

    缺省值:上次^CF值

    用^GS然后用^FD取(A到E)适当字符数据段语句产生所需符号。

    字符字体指令

    各种^AX(选字符字体)指令是用来选择所需字体。三个参数在这条指令里定义字体旋转,字符高度和字符宽度。

    ^AX指令格式

    ^Axa, b, c

    ^A=字符字体

    x=选点阵字体;

    如值不正确或不具体指令跳过

    其它值:A到Z,和~S

    (任何打印机内字体包括下载字体,EPROM贮存字体和字体A-2和1-9都可通过

    ^CW选择)

    a=字体方向

    缺省值:^FW定义或上次^FW值

    其它值:

    N=不转

    R=旋转,顺时针90度

    I=颠倒,180度

    B=反转,270度

    对点阵字体

    b=字符点高度

    缺省值:标准点阵字体原型高度

    其它值:高度乘2到10倍,标准高度增加整数倍。

    c=字符点宽度

    缺省值:标准点阵字体原型宽度

    其它值:宽度乘2到10们,标准宽度增加整数倍。

    4──7

    阶梯字体

    b=字符点高度

    缺省值:10点或上次^CF值

    其它值:10到1500取决于内存/字符尺寸

    c=字符点宽度

    缺省值:10点或上次^CF值

    其它值:10到1500取决于内存/字符尺寸

    用^AX指令例子

     

    比例间隔

    比例间隔不同于固定间隔,在表4.4,字间空隔(字符间的空)对字体A到H是变化的面所有字间空是相同的。例如在搈w敿涞目蘸蛽IE敿涞目障嗤?/P>

    基准线是所有字符底部(基准)起始的想象线(除了下行字母)。基准线和轮廓底部区域用于字符下行字母。基准线在表4.4定义。基准线和轮廓顶部位置关系。例如,字体揈數幕枷呤窍蛳侣掷ゲ?3点。

    点阵字体尺寸

    字符段指令参数b和c控制放大率,所以对字体最后尺寸。参数确点的点数ZPLII实际用一整数倍于原高/宽。例如,你用的

    ^AD, 54

    你三倍于原尺寸(54点高)得到字体。而你用了

    ^AD, 52

    你得到同样结果(设52点高字符)

    高成宽放大率的比例由参数定义。如不被定义,就用^CF的高和宽。如高是两们于标准高,宽是两倍于标准宽。

    注:如有一个^CF指令,带有高度和宽度定义是设置第一和字体,任何以后^AX指令(选择不同字体)必须带高和宽参数填入内。如不这样,所选字体将用^CF高和宽参数放大。以下是一个产生的例子。

    4──12

    平滑字体尺寸

    ^A(阶梯字体)指令是建立在阶梯字体(A=CG Triumvirate Bold Condensed)阶梯字体(也称光滑失量字体)尺可能水平,垂直字符尺寸或在二个方向一点一点过渡。

    (不能用在斑马 STRIPE S300打印机)

    平滑字体(A)缺省是不旋转。一个字符高15点宽12点。打印机打印平滑字体是取决于今A指令中旋转,高和宽参数

    ^A指令格式

    ^Aa, b, c

    ^A=平滑字符字体

    a=字体旋转

    缺省值:N=不转或上次 ^FW值

    其它值:R=旋转,顺时针90充

    I=颠倒,180度

    B=反转,270度

    b=字符等

    缺省值:15点或上次 ^CF值

    许可值:10-1500点

     

    c=字符宽

    缺省值:12点或上次 ^CF值

    许可值:10-1500点

     

    下载平滑字体和点阵字体不同处

    对平滑字体之间的空区产生相同。字符空区之间的高和宽起来近似。等于这个完成通过打印机内的平滑算法。

    在点阵字体里,空区是在字体里,实际上点阵字体的高是大于宽。点阵字体是字符单元最大尺寸。

    标准斑马Code Page 850字符值大于十六进制20。六个十六进制字符值低于十六进制20也能被认得。以下框图显示这些字符值并打印出。

    注:不认识字付值将缺省一空格。

    下载矢量字库

    建立矢量字量字体所有点参数指令被翻译南来进入元素。打印机把点参数转换到一些元素。矢量字体工作在元素里,不是点决定多少点需送特别元素,用以下公式:

    (元素尺寸)×(打印机每英寸点数)

    点= ──────────────────

    72

    用6点/毫米打印头的打印机摯蛴』坑⒋绲闶龜值是152.4

    用8点/毫米打印头的打印机摯蛴』坑⒋绲闶龜值是203

    用12点/毫米打印头的打印机摯蛴』坑⒋绲闶龜值是304.8

    注:实际元素尺寸将是一个近似值。

    实际字符点的高和宽非常取决于字体风格和特别的字符。所以有些字符会比实际要求点的尺寸小或大。

    所有矢量字体基准线是点的单元尺寸当场计算的。基准线是单元顶到底的四分之三。例如,如单元尺寸是56个点。基准线将是60点(3/4)从顶到底。

    除了文本和条码外,斑马打印机可打三种图象

    框和线

    图象贮存在ZPLII标签格式

    十六进制图象

    ZPLII有一个格式指令在任何标签格式中建立框和线。标签格式中贮存图象和数据在打印时可以合并。另外ZPLII图象打印来源可从其它已被建立(或转换到)十六进制格式。这样图象来源可来自各方面,包括CAD程序,画,刷程序和扫描图象这章描述画图象所需ZPLII指令。

    6──2

    ^GB(图象框)指令用于标签格式中画框和线,框和线可用于突出重要信息。区分标签各个区域,或使标签看起来整齐。

    画框和线是同样格式指令

    ^GB格式指令

    ^GB=图象框

    w=框的宽度(点)

    缺省值:厚度或一个点

    最小值:1点

    最大值:9999点

    h=框的高度(点)

    缺省值:厚度或1个点

    最小值:1点

    最大值:9999点

    m=线的厚度

    缺省值:1点

    最小值:1点

    最大值:9999点

    c=线颜色

    缺省值:B=黑

    其它值:W=白

    对w和h参数,记住打印机有6,8,12点/毫米缺省。打出153. 203或300点每尺寸。确定w和h值,算出这方向毫米乘6, 8, 或12。

    注:在下页例子对8点/毫米打印机设计。

     

     

     

    6──3

    画框例子

    以下是画一个1英寸高,1.5英寸宽和10个点厚的框的指令。

    画垂直线例子

    以下是画一个1英寸高和20高厚的垂直线指令

    画水平线例子

    以下是画一个一英寸长和30点厚的水平线指令。

     

     

    ^XG(调用图象)指令是调用一个或更多图象打印。这指令用于标签格式图象合并如公司标记,一个局部和文本数据组成一完整标签。

    一个图象可以根据格式需要多次调用和改变大小。其它图象数据也可以被加进格式。

    ^XG指令格式

    ^XG < Sve: > Objectname < .ext >, x, y

    ^XG=调用图象

    Sve: = 贮存图象原装置

    附加,缺省是搜索最先的

    Objectname = 贮存图象名,1-8个字符 缺省用揢NKNOWN斆?/P>

    .ext = 扩展名,3个字符 固定的,始终是.GRF

    x = x方向放大因子。

    缺省值:1

    最小值:1,最大值:10

    y = y方向放大因子

    缺省值:1

    最小值:1,最大值10

    以下是用^XG指令调用图象从DRAM中SAMPLE.GRF然后打印5个不同地方和5不同尺寸在同一标签上的例子。

    移动图象

    ^IM(移动图象)指令执行一个点阵图象直接从贮存原里移动。这指令同样调用图象指令而没尺寸参数。

    ^IM指令格式是

    ^IM < Svc: > Objectname < .ext >

    ^IM = 移动点阵字体

    Svc: = 被移动图象的源装置

    附加的,缺省时搜索最行先的

    Objecname = 贮存图象名,1-8字符(缺省,用揢NKNOWN斆?/P>

    .ext = 扩展名,3字符 固定,始终是.GRF

    注1:用^FO指令,国家可以定位在标签任何位置。

    注2:在^IM和^XG指令间的区别是图象移动指令没有放大,所以所需格式时间较少。更进一步,这图象必须是在8,16或32撐粩。

    以下是移动原始尺寸的从DRAM中的SAMPLE.GRF图象打印在5个地方。

    图象在标签格式中工作过程

    ^IS(图象贮存)^IL(图象加载)指令是用于贮存ZPL标签格式(包括文本与/或条码)作为一特殊图象在打印机的DRAM中。这使你可以增加产生一系列相似但不相同的标签。

    贮存图象中段的内容(如建立一临时),然而在以后标签格式中,指令的输入调用图象格式和数据合并。

    在内存中贮存图象标签格式

    ^IS(图象贮存)指令用ZPLII标签格式贮存图象格式的。这指令用在标签格式中典型的是在最后。它指示打印机贮存图象标签格式而不是ZPLII码文件。图象可以以后被调用,不在格式时间及复盖整个标签可用数据。

    用这技术复盖图象内容信息和数据极大增强产生标签格式能力。如目标名省略,将用缺省名揢NKNOWN.GRF?

    ^IS指令格式是:

    ^IS指令格式是

    ^IS < Dst: > Objectname <.ext >, x

    ^IS = 贮存图象格式

    Dst. = 贮存图象目的装置

    缺省值:R: (DRAM)

    其它值:B: (附加内存)

    Objecname = 图象名,1-8字符(缺省,用揢NKNOWN斆?/P>

    .ext = 扩展名,3字符 ( 固定,始终是.GRF)

    x = 贮存后打印图象

    缺省值 Y=是

    其它值 N=不

     

     

     

    6──13

    以下是用^IS指令贮存标签格式到DRAM中的例子。用于贮存图象名是SAMPLE2.GRF

     

     

    以下是贮存图象格式标签的另一例子。

    从内的中调用标签格式

    ^IL(图象加载)指令是用在一个贮存的格式图象加载标签格式的开始,并和附加数据合并,图象始终定位在^FOO,0

    用这技术复盖图象住处和数据,极大增强了产生标签格式能力。

    ^IL指令格式

    ^IL < Svc: > Objectname < .ext >

    ^IL = 加载点阵图象

    Svc: = 贮存图象源装置

    附加的,缺省时搜索最新的

    Objecname = 图象名,1-8字符(缺省,用揢NKNOWN斆?/P>

    .ext = 扩展名,3字符 ( 固定,始终是.GRF)

    以下是调用贮存在DRAM中图象SAMPLE2.GRF并复盖附加数据的例子。

     

     

    在贮存装置间传送目标

    传送目标

    ^TO(传送目标)指令是用于拷贝一个或一组目标从一个贮存装置到另一个。它十分象PC机中拷贝功能。

    (不能在斑马STRIPE打印机上用)

    源和目标装置必须被支持且必须不同和合法的动作。非法参数将使指令跳过。

    这指令中没缺省值。而星号(*)可用于替代目标和扩展名,如ZEBRA.* 或 *.GRF将可在^TO指令中被接受。

    ^TO指令格式

    ^TO Sve: Objectname .ext , Dst: Objectname .ext

    ^TO = 传送目标

    Svc: = 贮存目标源装置 R: , B:

    Objectname = 贮存目标名(支持用替换符)

    .ext = 扩展名,3字符。(支持用替换符)

    Dst: = 表示贮存的目的装置。 R: , B:

    Objectname = 贮存目的中目标名(支持用替换符)

    .ext = 扩展名,3字符。(支持用替换符)

    注1:如目的装置没有足够空间贮存目标文件,输入操作将被否定。

    注2:斑马文件(Z:*.*)不能被传送,这些文件具斑马技术合同版权。

    以下是一些用^TO指令的例子

    从DRAM中拷贝目标ZLOGO.GRF到附加内存卡且改名为ZLOGO1.GRF

    ^XA

    ^TOR: ZLOGO.GRF, ……

    ^XZ

    从附加内存卡中拷贝目标SAMPLE.GRF到DRAM并保持同一文件名。

    ^XA

    ……

    ^X2

    传送多个目标

    星号(*)能从DRAM到内存卡传送多个目标文件(除了*.FNT)。例如你有几个目标文件包含标记。这些文件是LOGO1.GRF,LOGO2.GRF和LOGO3.GRF。

    例如 ……

    你要把所有LOGO文件传送到内存卡并用NEW文件名。

    用星号(*)放在LOGO和NEW后面。你可用一第指令拷贝所有文件。

    格式如下:

    ^XA

    ……

    ^X2

    注:在多个目标传送中,一个文件太大而不能存在内存卡里,它就跳过。所有剩下文件将检查是否能贮存。那些能贮存的将被贮存。

     

     

     

    6──17

    从内存中删除图象

    ^ID(删除项目)指令从选择贮存区或一组中删除目标、图象、字体、格式等。这指令可以用在打印格式中象前面贮存一个新的一样删除目标或者简单的删除目标单独类型。

    目标名和扩展名支持用星号(*)作为替换符。允许简单删除一组目标。

    ^ID指令格式

    ^ID < Sve. > Objectname < .ext >

    ^ID = 删除图象(目标)

    Svc. = 目标贮存的源装置 R: , B:

    Objectname = 贮存图象名,1-8字符(缺省,用揢NKNOWN斆?/P>

    .ext = 扩展名,3字符(缺省是.GRF)

    以下是用^ID指令的各种例子。

    从DRAM中删除贮存的格式:

    ^XA……^XZ

    从DRAM中删除名为SAMPLE格式和图象,不考虑扩展或。

    ^XA……^XZ

    删除图象SAMPLE1.GRF贮存SAMPLE2.GRF

    ^XA

     

    ^XZ

    删除DRAM中每一个文件:

    ~XA……^XZ

     

    前面几章已经表了用ZPLII建立标签的基本指令。这章将介绍信息和指令是更先进技术如特殊效果,非打印注解,串行数据段,控制指令和程序限制。

    打印的特殊效果

    ZPLII包括几个撎厥庑Ч麛指令。

    打印一个镜象

    ^PM(打印标签镜象)指令打印在标签打印区里做一镜象。这指包括镜象从左到右反过来。

    ^PM指令格式

    ^PMa

    ^PM=打印镜象

    a=镜像打印

    Y=是

    N=不{上次贮存参数=不}

    (如无参数指令跳过)

    以下是怎样用^PM指令的例子。

    注:^PM指令将保存到^PMN指令把它关闭或打印机关机。

    ^SN(连续数据)指令允许打印机选择顺序数据段递增或递减。

    (例如,例数据段值递增或递减)在每次被打印的标签上。

    在一个给定的格式里可以有超过100到150字符段或条形码段。顺序数据最大12位整数。第一位整数是从右到左顺序段数起。

    如字符数字顺序到最后带有字母字符,数据将被扫过,字符接字符从右到左直到碰到数字字符为止。连续数据要发现第一个数字值才执行。

    用零引导

    在^SN指令中,揨敳问龆ㄒ嫉牧闶欠癖淮蛴』蛞种啤U飧霾问娜笔≈凳遣淮蛴∫剂恪H【鲇谟媚囊桓鲋担╕=是,打印引导零;N=不,不打印引导零)打印机按照以下方式。

    打印引导零

    起始值最右边的连续数字。宽度(连续数的位数)决定被扫描是从右到左直到第一位非数字(空格或字母)被发现。建立一特别宽度需要另加上引导零。

    抑制引导零

    起始值最右边的连续数字,包括引导空格、宽度(连续的位数)决定被扫描是从右到左直到第一位字符(除了空格)被发现。建立一特别宽度,需要另加上空格或零。抑制零被空格替代。在连续处理中,当输入数包含 有零中,最后零不抑制。在这种情况下只打印单一的零。

    注:如在顺序打印标签时打印机纸或色带用完,在撚猛陻发生前被打印的标签摬糠謹在以后第一张标签打印(标签或色带被替换和校准完成后)时是相同的序列号。这就是在撚猛陻前没完全打印的最后标签重打。这也可以由^JZ指令控制(见3-11页)

    顺序数据指令替换段数据(^FD)指令,它带有标签格式程序。

    ^SN指令格式

    ^SNv,n,z

    ^SN=顺序数据

    v=起始值

    缺省值:1

    其它值:最大12位数字

    n=增加/减少值

    缺省值:1

    其它值:最大12位数字

    注:对于减少值,需给一个带减号(-)值

    z=如需要加引导零

    缺省值:N=不

    其它值:Y=是

    以下是怎样用^SN指令例子

    注:增加/减少发生在每一个串行数据段里,而所有每个串行数据重复打印是由打印数量^PQ指令的搑敳问龆ā?/P>

    可变数据

    你可启动可变数据段程序增加输出量。替代每次标签被打印的整个格式中变化的数据段格式。用这方法,你必须用^MC和^FV指令。

    点阵清除

    在正常操作下,一个格式被打印后点阵被清除。^MC(点阵清除)指令是用于保存当前点阵。这应用是保存当前生以后的标签直到用^MCY指令清除。

    ^MC指令格式

    ^MCx=点阵清除

    x=y=是(清点阵){1.V.P=不}

    N=不(不清除点阵)

    注:^MCN指令保存当前标签格式化后镜象。它将出现在下一打印标签的背景里。

    ^FD段不被清除

    贮存格式

    你能建立一个格式并反它存在临时内存里。一个贮存格式可以调回和下载数据合并成一个完整标签。这处理节约了传送时间而不是格式时间。如果优化输入装置使它不工作特别有用。

    建立格式如下

    设计标签。

    替抚数据段可变数据。

    分配段尺寸空间。

    给格式名。

    贮存格式到打印机。

    你可贮存多个格式,在DRAM容量内。如你想贮存格式超过内存大小,格式不被贮存。格式没被贮存时你不要接收出错信息。你要知道格式没有贮存仅仅当你调用它(是不能做的)或你要打印格式列表。

    如关电源,印有在DRAM中贮存格式都会丢失。

    下载格式指令

    ^DF(下载格式)指令贮存文本串ZPLII格式指令和以后用^XF可变数据合并。格式可以被贮

    调用贮存格式

    ^XF(调用格式)调用一个贮存格式并和可变数据合并。可多次调用^XF指令且在标签格式的任何地方。

    当调用贮存格式并利用^FN(数字段合并数据时,调用格式必须包含^FN指令去适当合并数据。

    当用贮存格式减省传送时间时,打印时所需的格式时间由ZPLII从贮存的文本串调用,则不格式的时间就省下了。

    ^XF指令格式

    ^XF

    ^XF=调用贮存格式

    {Srci}=贮存镜像的源装置。

    {附加、缺省时是先搜索到的}

    objectname=贮存镜像名,1-8字符

    (缺省,用揢NKNOWN斆?/P>

    {.ext}=扩展名,3个字符

    {固定的,始终是.ZPL}

    以下是^XF指令从DRAM中调用STOREFMT.ZPL格式并送新的数据。

    ^XA

    ^XFR:STOREFMT.ZPL^FS

    ^FN1^FDZEBRA^FS

    ^FN2^FDPRINTER^FS

    ^X2

    本地目录列表

    ^WD(标签上打印目录)指令打印条形码标签列表,贮存在DRAM中目标,或字体(如果打印机有安装在ROM附加字体)。

    对条形码列表会显示条形码名字。对字体列表会显示用^AX指令和尺寸的字体,数字名字。对DRAM中贮存目标列表会显示目标名、扩展名、尺寸和樗。所有列表包括在双线框内。

    ^WD指令格式

    ^WD<{Src:Objectname.ext}>

    ^WD=标签上打印目录

    {Src:}=贮存镜像源装置

    {附加的,缺省时是搜索到的}

    Objectname=目标名

    {附加的。缺省是?敗?斠材鼙挥脈

    {.ext}=扩展名

    以下是用^WD指令例子。

    打印DRAM中所有目标列表。

    ^XA^WDR:*。*

    ^XZ

    打印所有字体列表

    ^XA^WDE:

    ^XZ

    使用贮存格式更多例子

    当调用和合并格式中某些可贮存格式指令工作包含设计和节约贮存格式。

    变数据时

    以下是一个怎样用各种贮存格式指令的例子。首先,输入以下格式并关到打印机。注意是没标签被打印的。(数据灯批示会闪一下)。

    然后,输入以下格式并关打印机。标签就会被打印出来。

    控制指令

    控制指令可在任何时候从主机关出并立即在打印机上响应。控制指令可以一组也可以学了。

    控制指令可以由软件直接送打印机(如清除内存),物理动作(如移到下一起始位置),或组合(如走一张空标签并计算贮存它的长度)。

    所有控制指令的基本格式是

    ~(指令)

    测试和启动指令

    以下指令依字母表顺序介绍,是用于测试打印机各种单元和它的状态。送~HM(内存状态)指令到打印机,立即返回状态信息到主机。用这指令使你知道内存状态。

    见附录E这信息解释

    送~HS(主机状态)指令到打印机,立即有三行打印状态信息返回主机。用这指令使你任何时候可以知道打印机状态。

    见附录D这信息解释。

    ~JR(开机复位)指令复位所有打印机的内部软件,执行开机,自检清缓冲和DRAM,复位通讯参数和缺省值。~JR执行同手册上开机同样的功能。

    本页信息不能在斑马STRIPE打印机上应用

    ~JN(打印头测试报错)指令复位打印头针出错指示,~JO转换起作用。如任何以后打印针执行测试发现打印头坏时打印机进入规定状态。(如转换打印头指示器在稳定状态)。

    ~JO(打印头测试不报错)指令压制打印头针状态出错检查而允许继续打印。当打印机关机或接收到一个~JR或~JN指令这压制被取消了。如果~JO压别起作用打印头测试将不产生报错。

    ~JT(打印头测试间隔)指令让你改变打印头测试间隔100到任何的希望。打印机自动执行一个内部打印头针测试在每100张标签一次。这测试发生是一打印最小延迟。所以这测试可以使打印机执行处于暂停。

    ^JT指令格式

    ^JTxxxx

    ^JT=打印头测试间隔

    xxxx=四位数表示测试间的标签总数

    缺省值:0100

    许可值:0000-9999

    校准和走纸指令

    以下指令按字母顺序用于执行各种打印机标签色带校准和设置走纸模式。

    ^JC(设标签传感器校准)用于作用一标签长测量和再校准标签和色带传感器值。

    注:在连续模式,仅标签和色带传感器被重校准。

    ^JG(传感器校准图象)是用于作用标签长度测量,再校准标签和色带传感器并打印传感器值的图象(标签传感器图)。

    ^JL(设标签长度)是用于没标签长度。取决于标签尺寸,打印机将送一或更多张空标签。

    ^MF(走纸)指令命令摽鷶时标签怎样。

    ^MF指令格式

    ^MFp,h

    ^MF=走纸

    p=开机时走纸动作

    缺省值:F=走纸到传感器后第一个空白。

    其它值:C=(见~JC指令)

    L=(见~JL指令)

    N=(不走纸)

    H=关打印头后走纸动作

    缺省值:F=走纸到传感器后第一个空白

    其它值:C=(见~JC指令)

    L=(见~JL指令)

    N=(不走纸)

    取消/消除指令

    以下指令控制斑马输入缓冲内容:

    NJA(全部取消)指令取消缓冲所有格式指令。也取消任何可打印的批处理。打印机将在当前标签(如正在打印)打印完成后停止打印。所有内部缓冲数据被清除。揇ATA數苹峁乇铡?/P>

    ~JP(暂停和取消格式)指令,清除当前处理格式和使打印机处于暂停状态以后缓冲格式被清除直到缓冲空白。当缓冲空白和无东西传送揇ATA斨甘镜乒乇铡?/P>

    输出~JP指令等同于用打印机的取消键。除了打印机没有先在暂停状态。

    ~JX(取消当前部分输入格式)指令取消当前被送到打印机的一个格式。对当前正打印的任何格式无作用,或对以后再送的格式也无作用。

    打印机控制指令

    以下指令控制各种打印和操作。

    ~PH或^PH(回到起始位置)指令使打印机送一空白标签。

    ~PH指令是当前被打印格式完成或当打印机牌暂停时送一空白标签。

    ^PH指令是在打印格式后送一空白标签

    ~PP(程序暂停)指令是当前标签被打印(如一个标签正被打印)后停止打印使打印机牌暂停状态。

    ^PP(程序暂停)不是立即的。所以在暂停起作用前有八张标签可能被打印了。在打印格式后这指令使打印机暂停。

    这操作等同于在打印机面板上按暂停键。打印机将保持暂停直到再按暂停键或~PS指令送打印。

    ~PS(打印开始)指令使打印机在暂认定状态恢复打印。这操作等同于当打印机已经在暂停状态时按打印机面板上暂停键。

    ^PF(回到点数行)指令是使打印机回到标签(高速移动标签不打印)点数行,在标签底部。当标签底部是空的允许快速打印。

    ^PF指令格式

    ^PHx

    ^PF=回到点数行

    x=点数行移动

    缺省值:没。如设值或不正确值指令跳过。

    许可值:最小=0,

    最大=9999

    ^PQ(打印数量)指令有几个打印操作。它控制打印标签数量,打印机暂停打印标签数量,每个序列号复制数量。

    ^PQ指令格式

    ^PQ=打印数量

    q=打印标签总数

    缺省值:1;

    许可值:1-99,999,999

    P=暂停(懽閽)计数

    缺省值:0=不暂停

    许可值:0-99,999,999暂停间的标签数

    r=每个序列号的复制数

    缺省:1=不复制

    许可值:1-99,999,999复制

    0=不考虑暂停计数

    缺省值:N=不

    其它值:Y=是

    ^PQ?挷问档慕馐?/P>

    ?挷问璩蒠,打印机每组标签计数(慞挷问┍淮蛴『蟛辉萃!?/P>

    ?挷问璩蒒,(缺省),打印机在每组标签计数被打印后暂停。

    ^PQ指令的例子

    ^PQ50,10,1,Y:打印总数50张标签每个序列号只打一张。打印每组数量是10,但在每组间不暂停。

    ^PQ50,10,1,N:打印总数50张标签每个序列号只打一张。打印每数量是10,每组打印后暂停。

    ^PR(打印速度)指令决定标签打印速度和回转速度(送一空标签)

    ^PR指令格式

    ^PRP,S

    ^PR=打印速度

    P=打印速度

    缺省值:速度A

    许可值:A或2 50.8毫米/秒(2英寸/秒)

    B或3 76.2毫米/秒(2英寸/秒)

    C或4 101.6毫米/秒(2英寸/秒)

    5 127毫米/秒(2英寸/秒)

    D或6 152.4毫米/秒(2英寸/秒)

    E或8 203.2毫米/秒(2英寸/秒)

    S=回转速度

    缺省值:速度D

    许可值:A或2 50.8毫米/秒(2英寸/秒)

    B或3 76.2毫米/秒(2英寸/秒)

    C或4 101.6毫米/秒(2英寸/秒)

    5 127毫米/秒(2英寸/秒)

    D或6 152.4毫米/秒(2英寸/秒)

    E或8 203.2毫米/秒(2英寸/秒)

    打印机选择速度操作直到以后重输入格式或打印机关机。

    打印机速度应用举例。打印质量取决于标签、色带、打印速度和打印操作模式。运行测试你的应用是非常重要的。

    高速打印限制

    仅在热转印模式。

    水平方向条形码在速度每秒2?5(毫米)时可以打印X方向最少5mil。

    旋转条形码在高速打印时X方向最小10mil(模工)。在每秒2斒笨梢訶方向5mil(模1)。

    字体A在放大率1时是不推荐;其它所有字体都可接受。

    改变回缩顺序

    ~JS(改变回缩顺序)指令是用于控制回缩顺序。这指令能用在打印机是否带切工时用。

    (斑马STRIPE打印机不适用)

    主要应用是:1)通话在连续纸切边撈鹗嫉銛编程。2)当打印机用在打印/加应用配置时提供在剥离标签后立即回缩。

    这指令仅起作用到打印机关机,新的~JS指令送打印机或在面板上改变它。当碰到~JS指令时,它将取代当前撁姘鍞设置的回缩顺序

    ~JS指令格式

    ~JSx

    ~JS=改变回缩顺序

    x=缺省值:N=当前打印机模式的正常操作

    其它值:A=打印(切纸)后回缩

    B=打印(切纸)前回缩

    面板设置控制回缩顺序调整不用密码保护,在打印模式设置后,它显示

    BACKFEED SEQ

    有三个选择AFTER PRINT, BEFORE PRINT 和 DEFAVLT,这面板设置能被永久贮存。

    注:

    ~JSx指令已被^XBA和^XBB指令替代(在ZPL版本8.1.0)。

    ^XB操作正常。

    ^XB(抑回缩)指令抑制标签向前到撕断位置取决于当前打印机模式。当设不向前送时,下一标前打印前回缩就不需要了。所以打印能力将被改善。当批量打印时,最后的标签也不含有这指令。

    ^XB指令格式

    ^XB=抑制回缩

    在撕断模式:

    正常操作一回缩,打印,送到起始点

    ^XB操作一打印(如回绕器模式)

    在剥离模式:

    正常操作一回缩,打印,送到起始点

    ^XB操作一打印(如回绕器模式)

    设点数/毫米

    ^JM(设点数/毫米)指令指令改变每毫米点数。取决于打印头,正常斑马打印机政党每毫米点数是12点/毫米(304点数/英寸),8点/毫米(203点数/英寸)或点/毫米(153点数/英寸)。在有些应用中。不要求这些高分辨率。对那些应用要选择纸分辨率4点/毫米(102点/英寸),3点/毫米(77点/英寸)

    如使用这指令必须在第一个^FS指令之前。

    ^JM指令格式

    ^JMx

    ^JM=设每毫米点数

    x=缺省值:A=12点/毫米,8点/毫米或6点/毫米

    其它值:B=6点/毫米,4点/毫米或3点/毫米

    显示控制指令

    (本页信息不适用于斑马STRIPE打印机)

    ^KP(定义密码)指令是用于定义必须进入面板开关和LCD设置模式的密码。

    ^KP指令格式

    ^KP

    ^KP=定义密码

    =强制四位密码

    ^KL(定义语言)指令是用于选择面板显示的语言。

    ^KL指令格式

    ^KLx

    ^KL=定义语言

    x=缺省值:1=英语

    其它值:10=西班牙

    改变分隔符和指令前缀

    有些应用,你可能需要改变ZPLII分隔符(缺省摚瑪)格式指令前缀(缺省揯敚?或控制指令前缀(缺省:搤敚S媚阊〉娜魏蜛SCII字符改变它,成一个恰当的指令。

    如你用的手持终端不能输入ZPLII指令的逗号,如果你工作在大型机处理一个脱字符有困难,而一些其它的字符很容易作用,那你就可以这样做。

     

    通讯诊断指令

    斑马打印机通过硬件和软件控制支持通讯诊断,你可以用这诊断程序问题。~JD(允许通讯诊断)指令初始诊断模式产生ASCII输出(用当前标签长度和打印机的全部宽度)打印机接收的所有字符。这输出包括ASCII字符十六进制值和任何通讯错误。

    ~JE(禁止诊断)指令取消焦模式返回打印机正常标签打印。

    主机状态指令

    主机目录列表

    ^HW(主机目录列表)是用于传送一目录列表到内存区(贮存装置)返回到计算机(装置提供输入打印机)。这指令将用ASCII格式串目标名通过主串口送主机。

    行每个参数是固定长度,行的总长度也是固定的。每厅目标列表用星号(*)开始紧跟是一空格。目标名有8格,3格扩展名。扩展名跟踪空格,然后是6格目标尺寸,2个空格和3格附加樗(保留将来使用)。

    格式是这样。

    -DIR R: XX

    *Objectname.ext(2sp.6obj.sz.)(zsp.)3 option flags)

    *Objectname.ext(2sp.6obj.sz.)(zsp.)3 option flags)

    -xxxxxxx bytes free

    注:=文本起始, =回车/换行,=文本结束

    这指令可以以单独文件类型在任何时候输入打印机。当指令被接收后,打印机将在执行完其它任务后马上返回目录列表。

    注:记住,这指令被打印机接收后处理的。而不象~HS马上处理。

    ^HW指令格式

    ^HW<{Sre:objectname.ext}>

    ^HW返回主机目录列表

    {Sre:}=目标列表源装置。

    {可选,缺省是DRAM}

    Objectname=目标名

    {可选,缺省是?敗?斠材鼙挥谩

    以下是用^HW指令例子

    把DRAM所有目标例表送到主机:

    ^XA^HWR:*.*^XZ

    主机识别

    ~HI(主机识别)指令是设计用来从主机送到斑马打印机而找出斑马打印机类型。接收后,斑马打印机将送到主机如下信息。

    XXXXXX,V1.0.0,12,512KB,X

    XXXXXX=斑马打印机瑾

    V1.0.0=软件版本

    12=点/毫米

    512或1024KB=内存

    X=附加识别

    主机验证

    ^HV(主机验证)指令是有于从指定段返回数据。带着附加ASCII头送到主机。它可以被用于用^FN指令(见7-12页)已被分配任何段数字。

    ^HV指令格式

    ^HVX,Y,

    ^HV=主机验证

    X=指定段数字

    缺省值:0;

    许可值:0-9999。

    Y=返回的字符数

    缺省值:8字符;;

    许可值:0-256。

    =头(大写ASCII字符)

    缺省值:无;

    许可值:0-256字符。

    打印配置表

    ~WC(打印配置表)指令用于产生打印配置表。

    注:这指令仅在打印机空闲时才工作。

    开始打印

    ^SP(开始打印)指令允许当一完整标签被完成格式前标签在指定位置开始打印。在复杂标签末端,这指令可以增加打印的量。

    这指令工作如下。你用^SP指令指定工作的点行。然后建立一标签懚螔。当^SP指令处理时,所有在段的信息被打印。在打印处理时,所有以后^SP指令将连续被打印机接收和处理。

    如以后^SP指令段(或标签剩余段)已准备打印,标签不停止运动。如下一段没准备好,打印机将停在摫昵┲袛并等下一段将备完。^SP指令的精确位置是会由于打印速度和标签复杂性产生尝试性错误。

    ^SP指令有效的使用决定最差情况打印质量。如^SP指令特殊应用使用恰当你可照如下过程。如你送第一个^SP指令标签格式后,在送下一段前需系列打印机停下来,打印的标签将展示最差情况打印质量。它也将用命令调到任何段。

    注:如你用以上段过程,标签格式的最后必须如下:

    ^SP#^FS

    在以一注解中,标签长度800点行有一^SP500指令。在段2被接收和格式时段1将被打印。

    ^SP指令格式

    ^SPx

    ^SP=开始打印

    x=打印起始的点行

    缺省值:0

    其它值:^LL(标签长度)指令内任何数字。

    网络

    注:网络指令功能仅在14.0.1以上版本才行

    如你的打印机有RS-232接口,可以作为斑马打印机网络链的最后一台打印机。所有在网络中其它打印机必须有两个RS-232接口

    对斑马STRIPE打印机用在网络上特别考虑是

    打印机必须是链中最后一台打印机。

    打印机必须编上唯一的识别号。这数字由^NI指令分配。

    任何时候仅有一台打印机和主机通讯。

    分配打印机识别

    ^NI(网络识别号)指令用于 分配打印机网络识别号。在打印机连上网前必须做完。

    ^NI指令格式

    ^NIxxx

    ^NI=网络识别号

    xxx=分配到打印机识别号

    工厂缺省值:000

    许可值:001-250

    注:值必须是三位数或者被跳过。如果这样,用最后的^NI值。

    注:最后网络识别号设置将是系统识别的那一个。

    打印机连到网络上

    ~NC(网络连接)指令用于把一个特别打印机连上网络,把打印机的网络识别号唤醒。

    ~NC指令格式

    ~NCxxx

    ~NC=网络连接

    xxx=打印机网络识别号

    缺省值:000(如同没有)

    许可值:001-250

    使用特定网络上打印机需在任何标签格式开始用这指令。这指令必须包括在所有标签格式中以摶叫汛蛴』鷶。这数必须是三位数字长度。

    设所有打印机透明状态

    ~NR(设所有网络打印机透明)指令设置网络中所有打印机,不考虑识别号或当前模式使它们都处于透明

    ~NR指令格式

    ~NR

    设当前连接打印机透明

    ~NT(设网络打印机透明)指令设当前连接网络打印机透明。

    ~NT指令格式

    ~NT=设网络打印机透明

    怎样初始网络

    1) 关闭所有打印机然后再开

    2) 给第一台打印机唯一三位数。所有斑马打印机从出厂进识别号是000。你要分配一个识别号(001-250)给每一台斑马打印机。如你用计算机网络特别重要。

    3) 用~NT使第二步中打印机处于透明模式

    4) 重复5) 第二步和第三步直到网络中所有打印机有一唯一分配号。

    7──14

    使用网络

    网络打印机使用如下:

    1) 用~Ne给每台打印机一个三位打印机号码。

    2) 设第一台打印机为透明模式,3) 用~NT,4) 这样你可继续下一台打印机。

    重复第1和第2步在你的网络

    注:如你关了网络中一台打印机,所有这台打印机后的打印机都不再有用。

     

     

     

    A──1

    附录A桝SCII码表

    下页内容ASCII(American Standard Code For Information Interchage)用于斑马打印机的码表。

    在表中那些有阴影框的字符不推荐用于命令前缀,格式前缀或分隔符。

     

     

     

    A──2

     

     

     

     

     

     

     

     

     

     

    B──1

    附录B椖?0校验位

    计算确定模10校验位如下

    1) 从位置1数字开始(左手位),2) 在偶数位值相加

    0+2+4+6+8+0 = 20

    3) 第一步结果乘3

    20×3 = 60

    4) 从位置2数字开始,5) 在奇数位值相加。

    1+3+5+7+9 = 25

    6) 第一步和第三步结果相加

    60+25 = 85

    7) 校验位(第12位)是最小的数字使得当它加第4步结果产生是10的倍8) 数

    85+x = 90(下-10的倍数)

    x = 5 校验位

    以下是说明以上例子的条码。右边数(?敚┦切Q槲?/P>

     

     

     

     

    C──1

    附录C?模43校验位

    计算确定模43校验位如下

    Code 39码中每个字符有一特写值。它们如下。

    0 = 0 B = 11 M = 22 X = 33

     

    A = 10 L = 21 W = 32 % = 42

    数据串例子:12345 ABCDE/

    1) 数据串所有有字符值之和。用以上表得到字符值之和如下:

    1+2+3+4+5+10+11+12+13+14+40 = 115

    2) 除以43,3) 剩下余数

    115/43 = 2 余数29

     

     

     

    C──2

    3) 撔Q槲粩就是余数值

    余数 = 29

    29的值是字母T

    T就是校验位

    以下是说明以上例子的条码,右边数字(揟敚┦切Q槲?/P>

     

     

     

    D──1

    附录D?返回主机状态

    当打印机状态命令~HS被送到斑马打印机后,三个数据串被送回主机。每串以控制码开头以控制码结束。这样避免混乱,每串将在主机上分行显示/打印。

    串1

    aaa, b, c, dddd, eee, f, g, h, iii, j, k, l

    aaa = 通讯(接口)设置(*)

    b = 撝酵陻樗(1=纸完)

    c = 撛萃标志(1=暂停状态)

    dddd = 标签长度(点数值)

    eee = 接收缓冲格式数

    f = 摶撼迓鷶标志(1=接收缓冲满)

    g = 撏ㄑ墩锒夏J綌标志(1=诊断模式状态)

    h = 摬煌暾袷綌标志(1=不完整格式)

    iii = 不用(始终000)

    j = 摶礡AM敱曛荆?=配置数据丢失)

    k = 温度范围(1=过冷)

    l = 温度范围(1=过热)

    (*)这参数打印机波持率,#停止位,校验位设置和握手信号类型。三位十进制数表示8位二进制数。确定这参数,先把十进制数转换到二进制数,然后9位二进制数如下:

    aaa = a8 a7 a6 a5 a4 a3 a2 a1 a0

    a8=高速波持率0=111到19200

    1=28800更高

    a7=握手信号

    0=xon/xoff

    1=DTR

    下页继续

     

     

     

    D──2

    a6 =奇/偶校验

    0=奇

    1=偶

    a5 =禁止/允许

    0=禁止

    1=允许

    a4 =停止

    0=2位

    1=1位

    a3 =数据位

    0=7位

    1=8位

    a8 a2 a1 a0 = 波持率

    0 000=110

    0 001=300

    0 010=600

    0 011=1200

    0 100=2400

    0 101=4800

    0 110=9600

    0 111=19200

    1 000=28800

    1 001=38400(不执行)

    1 010=57600

     

     

     

    D──3

    串2

    mmm, n, o, p, q, r, s, t, uuuu, v, www

    mmm=功能设置(*)

    n=0(不用)

    o=摯蛴⊥反蚩獢标志(1=打开位置)

    p=撋陻标志(1=色带完)

    q=撊茸∧J綌标志(1=热转印状态)

    r=打印模式

    0=回卷器

    1=剥离

    2=撕裂

    3=保留

    s=打印宽度模式

    6=4.41英寸

    t=摫昵┑却龜标志(1=标签等待剥离)

    uuuu=一批标签剩余数

    v=摯蛴≈懈袷綌标志(始终1)

    www=内存中图象贮存数

    (*) 参数打印机标签类型,传感器图状态,通讯诊断状态。在串1中,三位十进制数代表8位二进制数。首先把十进制数转换到二进制数。然后8位二进制数表示如下。

    mmm=m>m6m5m4m3m2m1m0

    m7=纸类型

    0=不连续

    1=连续

    m6=传感器图

    0=关

    1=开

    m5=通讯诊断

    0=关

    1=开

    接下页

     

    D──4

    m4 m3 m2 m1=不用

    0=始终

    m0=打印模式

    0=热敏

    1=热转印

    串3

    ××××,y

    ××××=0000(保留以后用)

    y=0(保留以后用)

     

     

     

    E──1

    附录E椖诖孀刺?/P>

    当内存状戊命令~HM送到斑马打印机后,一行数据包括三个数字送回主机。这信息内容描述如下。

    内存状态行

    1024, 0780,1025, 0780

    第一个值是RAM(随机存贮器)安装在打印机上总数。这数单位是干字节。在这例子中,斑马打印机有1024K RAM安装。

    第二个值是RAM(随机存贮器)用户可用最大总数。这数单位是干字节。在这例子中。斑马打印机有最大可用780K RAM。

    第三个值是RAM(随机存贮器)当前用户可用数。这数单位是干字节。在这例子中。斑马打印机当前给用户可用780K RAM。

    注1:内存当前可用值是不包括点阵占用内存。(由^MCN)

    注2:下载图象或贮存点阵仅影响第个值。第1和第2值在打印机开机后将不改变了。


  5.  

你可能感兴趣的:(ZPL指令)