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,mCode 128——物流行业最常用的一维条码。f=Y 打印人类可读行,g=Y 将其打印在条码上方。
^B3^B3o,e,h,f,gCode 39——部分工业和国防规范仍要求使用的较旧一维码制。
^BE^BEo,h,f,gEAN-13 零售条码(UPC-A 请使用 ^BU)。
^BQ^BQa,model,mag,ecQR 码。放大倍数 1–10 设置模块大小;ec 设置纠错等级(H/Q/M/L)。数据前需加编码模式前缀,例如 ^FDQA,https://…
^BX^BXo,h,s,c,r,fData Matrix——广泛应用于电子产品和医疗标签的紧凑型二维码。
^B7^B7o,h,m,c,r,tPDF417——用于证件和部分物流单据的堆叠式二维码。

要获得可扫描的条码,需注意三点:模块宽度(^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 支持网站免费获取。