斑马打印机打印中文教程

斑马打印机在打印中文的时候有时候非常不方便,通过下面的指令我们可以方便的打印中文

打印机使用多种端口通信,直接通过串口/USB口/网络端口/蓝牙端口将指令字符串发送给打印机即可。下面我们先看看普通的打印英文指令。

1、Hello World!

指令:

1
2
3
4
5
6
^XA
^JMA^LL200^PW680^MD10^PR2^PON^LRN^LH0,0
^FO10,30
^A0N,72,72
^FD Hello World!^FS
^XZ

打印实现效果:

 

说明:

打印机的指令用“^”作为开头,任何打印指令都是从^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表示【24 dots/mm, 12 dots/mm, 8 dots/mm or 6 dots/mm】

^LL200 ——标签高度,这里是200个点

^PW680 ——标签宽度,这里是680个点

^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
2
3
4
5
6
7
8
^XA
^JMA^LL200^PW680^MD30^PR2^PON^LRY^LH0,0
^FO8,28
^GB400,50,100^FS
^FO10,30
^A0N,72,72
^FD Hello World!^FS
^XZ

打印输出效果:

^LH0,0 ——标签起点

2、打印中文字符

指令:

1
2
3
4
5
6
7
8
9
10
^XA
^SEE:GB18030.DAT^FS
^CWZ,E:SIMSUN.FNT
^CI26
^JMA^LL200^PW680^MD10^RP2^PON^LRN^LH0,0
^FO20,100
^AZN,72,72
^FD中123文ABC测试^FS
^PQ1
^XZ

  打印输出效果:

 

说明:

中文字符的打印需要预先设置字体库,而且在传输的时候需要用GB2312的编码方式传输,否则会出现乱码。

^AZN,72,72

注意第一个参数Z,它代表使用我们自己设置的Z字体,72代表字体的大小,由于使用了点阵字体,这里的大小必须是24的整数倍。

^SEE:GB18030.DAT^FS

该指令共有三个参数

^SEa:b.c

参数a代表本地编码表的选择,可选值有【R,E,B,A】这四个参数的值定义暂时没有详细的资料,目前知道它用于区分ZPL指令和ZPL II指令,默认为R,这里使用E。

参数b代表编码的名称,目前网上找到的资料都是使用GB18030,暂时没有发现其他编码。

参数c代表编码的后缀名,一般是DAT。

^CWZ,E:SIMSUN.FNT

该指令共有4个参数

^CWa,b:c.d

参数a代表设置的这个字体编号,可选值【A-Z和0-9】,当这里设置了以后,^A的第一个参数才能引用到这个字体。

参数b同^SE的参数a。

参数c代表字体名称,这里的SIMSUN是宋体,可参考

尝试设置更多字体类型,但是打印出来没啥区别。

参数d代表字体后缀名,一般是TTF。

3、打印中文二维码

1
2
3
4
5
6
7
^XA
^JMA^LL450^PW700^MD0^PR3^PON^LRN^LH0,0
^CI28
^FO200,30
^BQN,2,10
^FDHM,B0200 中文测试!123#测试¥ABC%测试^FS
^XZ

  打印输出效果:

 

 

说明:

该二维码有时扫不到,需要拿远一点才扫得到,而且打印机在打印了中文字符以后,需重新开关打印机清除缓存,才能打印。

其中^BQN,2,10是指定二维码,指令格式如下:

^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:二维码的内容

 

posted @   _Vincent  阅读(38)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示