Skip to content

What is IPL?

IPL (Intermec Printer Language) is the command language of Intermec label printers: the EasyCoder line and the Honeywell PM, PF, and PX series that replaced it. IPL works in two modes. In Program mode, a job defines a format, a template of numbered fields, and stores it on the printer. In Print mode, the job sends data for those fields and prints the label.

<STX><ESC>P<ETX>
<STX>E1;F1;<ETX>
<STX>H0;o50,50;f0;c21;h1;w1;d3,LabelZoom;<ETX>
<STX>B1;o50,120;f0;c0,0;h100;w2;d3,12345678;<ETX>
<STX>R<ETX>
<STX><ESC>E1<ETX>
<STX><ETB><ETX>

Every command sits between <STX> and <ETX>. A file can contain the real control bytes or these readable forms, so many IPL files open cleanly in a text editor.

Command What it does
<ESC>P Enters Program mode
E1;F1; Erases format 1 and creates it again
H0;… Defines text field 0
B1;… Defines barcode field 1
R Returns to Print mode
<ESC>E1 Selects format 1
<ETB> Prints the label

Inside a field, o sets the origin, f the direction, c the font or symbology, and d3, fixed data. IPL barcodes include linear symbologies, PDF417, MaxiCode, Data Matrix, and QR Code.

Aspect IPL ZPL
Printers Intermec EasyCoder; Honeywell PM, PF, and PX Zebra, and other printers that emulate ZPL
Structure Commands framed by <STX> and <ETX> A stream of ^-prefixed commands
Label data Format stored on the printer, data merged at print time Layout and data sent together in one stream

These free tools run in your browser:

The LabelZoom API converts IPL to and from ZPL, PDF, and images. For example, POST /api/v2/convert/ipl/to/pdf renders IPL as a PDF, and POST /api/v2/convert/zpl/to/ipl converts ZPL to IPL. Save IPL output as bytes, not text; see Binary output.