Zebra Programming Language
Zebra Programming Language (ZPL) is a page description language from Zebra Technologies, used primarily for labeling applications. The original language was superseded by ZPL II, but it is not fully compatible with the older version. ZPL II is supported by some non-Zebra label printers.
Later, the Zebra BASIC Interpreter (ZBI) was integrated into printer software, which is seen as an advancement to ZPL II by the producer and is ANSI BASIC oriented. Primarily, it is intended to avoid a refactoring of code when changing the printer, if the old printer software was written by a label printer of a competitor. A possible use of ZBI could be for when the Zebra printer receives a foreign label format, which it would then convert to ZPL II on the fly so it can be printed.
The language commands always start with a caret ('
^') or tilde sign ('
~'). ZPL II has more than 170 commands. Each format has to start with the command
^XA and end with
^XZ. For instance, the font size is sent to the printer with the
^ADN,n,m command, where
m are integers denoting the font size and spacing characteristics;
^ADN,18,10 is the smallest size and
^ADN,180,100 the largest.
The following is a complete example of a ZPL document for a product label:
^XA ^CF0,30 ^FO300,30^FDHU Label^FS ^CF0,25 ^FO20,100^FDHU ID: 112345678000001107^FS ^BY2.2,3,70 ^FO20,130^BCN,,N^FD112345678000001107^FS ^FO20,230^FD60-Volt Cordless Electric Hedge Trimmer^FS ^FO20,260^FD13^FS ^FO650,200^BQN,2,5^FDQA,^FS ^XZ
- "ColorWorks CW-C6500A Color Inkjet Label Printer with Auto Cutter (Matte)". Epson. Retrieved 31 July 2021.
Compatible with ZPL II
- "cab printers support ZPL II". cab.de. November 2020.
- "Zebra BASIC Interpreter 2.0". Zebra.com. Zebra Technologies. Retrieved 2020-03-26.
- "ZPL II Programming Guide (vol. I)" (PDF). Portable Technology Solutions. 2005. p. 6. Archived from the original (PDF) on 2012-03-22.