ZPL 命令参考 — Zebra 打印机命令速查表
更新于 2026年6月11日
本文是 ZPL II 命令的实用参考,涵盖绝大多数实际标签所需的命令:格式结构、文字、字体、条码、图形和打印机控制。所有位置和尺寸均以 打印机点为单位(203 dpi = 8 点/毫米——参见 什么是 ZPL?了解基础知识)。语法列中的参数说明:x,y= 距左上角的位置, h,w= 高度和宽度,o= 方向(N 正常,R 90°,I 180°,B 270°)。
标签格式
| 命令 | 语法 | 功能说明 |
|---|---|---|
^XA | ^XA | 标签格式开始。每个标签均以此命令开头。 |
^XZ | ^XZ | 标签格式结束。打印机收到此命令后渲染并打印标签。 |
^FX | ^FXcomment | 注释——打印机忽略。与其他字段一样以 ^FS 结尾。 |
^PW | ^PWwidth | 打印宽度(点)。设置为标签宽度,防止字段被裁切。 |
^LL | ^LLlength | 标签长度(点)。主要用于连续(无间距)介质。 |
^LH | ^LHx,y | 标签原点——偏移所有后续 ^FO 位置的起点。 |
^PQ | ^PQqty | 打印数量——此标签打印多少份副本。 |
^PR | ^PRspeed | 打印速度(英寸/秒)。较慢的速度通常打印更深、更清晰。 |
^MD | ^MDdarkness | 介质深度调整,范围 -30 至 30。打印浅淡时适当调高。 |
字段与文字
| 命令 | 语法 | 功能说明 |
|---|---|---|
^FO | ^FOx,y | 字段原点——将下一字段定位在距标签原点 x,y 点处。 |
^FD | ^FDdata | 字段数据——当前字段的内容(文字或条码数据)。 |
^FS | ^FS | 字段分隔符——关闭当前字段。每个字段后均需使用。 |
^FB | ^FBwidth,lines,space,align | 字段块——将 ^FD 文字排版成块:最大宽度、最大行数、行间距、对齐方式(L/C/R/J)。 |
^FR | ^FR | 字段反色——在与黑色区域重叠处将字段打印为黑底白字。 |
^FH | ^FH | 字段十六进制——允许在 ^FD 中使用 _xx 十六进制转义,例如 _C3_A9 表示 é。 |
^CI | ^CIencoding | 字符集;^CI28 选择 UTF-8,推荐用于任何非 ASCII 文字。 |
字体
| 命令 | 语法 | 功能说明 |
|---|---|---|
^A | ^Afo,h,w | 下一字段的字体:字体字母 f(0–9, A–Z)、方向、高度和宽度(点)。^A0N,40,40 表示默认可缩放字体,高度 40 点。 |
^CF | ^CFf,h,w | 更改所有后续未设置 ^A 的字段的默认字体。 |
^A@ | ^A@o,h,w,name | 使用打印机上存储的字体文件(例如已下载的 TrueType 字体)。 |
字体 0 是可缩放矢量字体,通常为首选;字体 A–H 是固定大小的位图字体,只在其原生尺寸或整数倍时效果正常。
条码
| 命令 | 语法 | 功能说明 |
|---|---|---|
^BY | ^BYw,r,h | 条码字段默认值:模块(窄条)宽度(点)、宽窄比、默认高度。在条码命令之前设置。 |
^BC | ^BCo,h,f,g,e,m | Code 128——物流行业最常用的一维条码。f=Y 打印人类可读行,g=Y 将其打印在条码上方。 |
^B3 | ^B3o,e,h,f,g | Code 39——部分工业和国防规范仍要求使用的较旧一维码制。 |
^BE | ^BEo,h,f,g | EAN-13 零售条码(UPC-A 请使用 ^BU)。 |
^BQ | ^BQa,model,mag,ec | QR 码。放大倍数 1–10 设置模块大小;ec 设置纠错等级(H/Q/M/L)。数据前需加编码模式前缀,例如 ^FDQA,https://… |
^BX | ^BXo,h,s,c,r,f | Data Matrix——广泛应用于电子产品和医疗标签的紧凑型二维码。 |
^B7 | ^B7o,h,m,c,r,t | PDF417——用于证件和部分物流单据的堆叠式二维码。 |
要获得可扫描的条码,需注意三点:模块宽度(^BY第一个参数)在 203 dpi 下至少 2–3 点;条码两侧各留约 10 个模块宽度的空白区;以及足够的高度(一维条码低于约 50 点时手持扫描器难以读取)。
图形
| 命令 | 语法 | 功能说明 |
|---|---|---|
^GB | ^GBw,h,t,c,r | 图形方框:宽度、高度、边框厚度、颜色(B/W)、圆角程度 0–8。细 ^GB 即可绘制线条。 |
^GC | ^GCd,t,c | 图形圆形,直径 d,边框厚度 t。 |
^GD | ^GDw,h,t,c,o | 在 w×h 方框内绘制图形斜线;o 设置方向(L 或 R)。 |
^GF | ^GFa,b,c,d,data | 图形字段——将位图(如徽标)以十六进制或二进制数据直接嵌入标签。 |
~DG | ~DGd:name,t,w,data | 下载图形——将图像存储到打印机,然后通过 ^XG 调用。 |
^XG | ^XGd:name,mx,my | 在当前字段原点处调用已存储的图形,并设置 x/y 放大倍数。 |
打印机控制与状态
| 命令 | 语法 | 功能说明 |
|---|---|---|
~HS | ~HS | 主机状态——打印机返回缺纸、暂停、缓冲区和里程计信息。 |
~HI | ~HI | 主机识别——型号、固件版本、DPI 和内存。 |
^MM | ^MMmode | 打印模式:T 撕离,P 剥离,R 回卷,C 切割。 |
^MN | ^MNtype | 介质检测:Y 间隙/网格检测,M 黑标检测,N 连续。 |
~JC | ~JC | 运行介质校准(打印机进给几张标签以找到间隙)。 |
~JA | ~JA | 取消打印机缓冲区中的所有标签格式。 |
^JUS | ^JUS | 将当前设置保存到闪存,断电后不丢失。 |
综合示例
一个使用上述大部分命令组的典型 4×6 物流标签:
^XA
^PW812
^CI28
^CF0,32
^FO40,40^FDSHIP TO:^FS
^FO40,80^A0N,44,44^FDAcme Industries^FS
^FO40,130^FD500 Warehouse Way^FS
^FO40,170^FDSpringfield, IL 62701^FS
^FO40,230^GB732,3,3^FS
^FO40,260^FDOrder #A-10592 / 3 of 4^FS
^BY3,2,120
^FO140,320^BCN,120,Y,N,N^FD4210159200083^FS
^XZ手动编辑点坐标很快就会令人厌烦——每次调整布局都需要修改数字并重新打印。如果您更希望将字段拖放到位并让 ZPL 自动生成,ZPLCraft 编辑器可将可视画布编译为正是这种干净的 ZPL 代码,并支持 通过 USB 从浏览器直接打印。
如需超出本速查表的详尽参数说明,权威来源是 Zebra 官方发布的ZPL II 编程指南,可从 Zebra 支持网站免费获取。