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.

Commands
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  and end with. For instance, the font size is sent to the printer with the  command, where   and   are integers denoting the font size and spacing characteristics;   is the smallest size and    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