斑马打印产口指令
打印机使用RS232通信,直接通过串口将指令发送字符串即可。
1 |
|
串口指令
打印机的指令用“^”
作为开头,任何打印指令都是从^XA
开始,到^XZ
结束。指令的参数直接放在指令后面
^FDstring^FS
^FD
是一段字符串的开头,^FS
是一段字符串的结尾,string
就是代表要打印的字符串
^FD Hello World!^FS
就是以表示指定要打印的字符串为
“ Hello World!”
(没错,包含前面的空格)
同时,要打印该字符,还必须先指定它所在的坐标(如^FO10,30
)和字体参数(如^A0N,72,72
)
^FOx,y
x
代表横坐标,y
代表纵坐标,如果你将x
的值改为20
,那么“ Hello World!”
将会右移一段距离。
^Aab,c,d
^A有a,b,c,d四个参数
a
,字体类型,的取值范围从【0-9,A-Z
】,0
是默认的内置字体,若需要其他字体则需要设置,在打印中文这一节将会说明。b
,旋转角度,注意参数a
和b
之间并没有逗号,有【N,R,I,B
】四个选项,分别代表正常,顺时针旋转90°、180°、270°
。c
,字符高度d
,字符宽度
^JMA^LL200^PW680^MD10^PR2^PON^LRN^LH0,0
这条指令设置打印机的参数,可以拆分如下:
^JMA
每毫米设定点,可选参数
【A,B】
,A
表示【24 dots/mm, 12 dots/mm, 8 dots/mm or 6 dots/mm
】,B
表示【12 dots/mm, 6 dots/mm, 4 dots/mm or 3 dots/mm
】,默认A
^LL200
标签高度,这里是
20mm
^PW680
标签宽度,这里是
68mm
^MD10
标签深度,可选值【
-30~30
】,值越高标签浓度越高
^PR2
打印速度,实际这是一个多参数的指令,
^PRa,b,c,b
和c
不设置则为默认值。其中a是打印速度,可选值【1-14,A-E
】,值越大速度越快,其中字母【2=A,3=B,4=C,6=D,8=E
】,即设置A
与设置2
无异。b
和c
的参数用于设置推出和回卷速度,默认即可。
^PON
打印方向,有【
N,I
】两个值可选,N
是正常,I
是倒置(标签底部先出)
^LRN
打印反转,有【
Y,N
】两个值可选,N
是正常,Y
表示将产生黑底白字(需要先绘制黑色填充方框)
1 |
|
中文字符
1 |
|
中文字符的打印需要预先设置字体库,而且在传输的时候需要用GB2312的编码方式传输,否则会出现乱码。
^AZN,72,72
注意第一个参数
Z
,它代表使用我们自己设置的Z
字体,72
代表字体的大小,由于使用了点阵字体,这里的大小必须是24
的整数倍。
^SEE:GB18030.DAT^FS
该指令共有三个参数
参数
a
代表本地编码表的选择,可选值有【R,E,B,A
】这四个参数的值定义暂时没有详细的资料,目前知道它用于区分ZPL
指令和ZPL II
指令,默认为R
,这里使用E
。
参数b
代表编码的名称,目前网上找到的资料都是使用GB18030
,暂时没有发现其他编码。
参数c
代表编码的后缀名,一般是DAT
。
^CWZ,E:SIMSUN.FNT
参数
a
代表设置的这个字体编号,可选值【A-Z和0-9
】,当这里设置了以后,^A
的第一个参数才能引用到这个字体。
参数b
同^SE
的参数a
。
参数c
代表字体名称,这里的SIMSUN
是宋体,可参考中文字体的英文名称
二维码
1 |
|
该二维码有时扫不到,需要拿远一点才扫得到,而且打印机在打印了中文字符以后,需重新开关打印机清除缓存,才能打印。
^BQa,b,c
a
代表二维码方向,默认是N
b
代表二维码的版本,可选值【1,2
】,1
是原始版本,2
是增强版本,推荐用2
,因为1
扫不出来。c
代表二维码的放大程度,可选值【1-10
】
注意二维码的打印还需要与^FD
配合,当我们使用^BQ
这个函数时,^FD
必须设置相关的参数
^FDab,cd^FS
a
:错误纠正率,【H,Q,M,L
】H
是超高可靠度,L
是高密度,建议使用H
b
:数据输入模式,【A,M
】A
是自动模式(参数c
可省略),M
是手动模式(需要指定参数c
的字符类型)c
:字符模式,【N】
数字,【A】
字符,【B】
字节,【K】
Kanji(日文汉字)d
:二维码的内容