^BI
Industrial 2 of 5 Bar CodePreview: partialA numeric-only symbology where only the bars carry data and the spaces just separate them — wide, sturdy and largely obsolete.
Syntax
^BIo,h,f,gParameters
| Parameter | Description and accepted values | If omitted |
|---|---|---|
| o | Rotation of the bar code on the label.N normal, R 90°, I 180°, B 270° | Last ^FW value, else N |
| h | Bar height in dots. Overrides the height set by ^BY for this field only.1 to 32000 dots | Height set by ^BY |
| f | Prints the digits underneath the bars as text.Y or N — print the human-readable line | Y |
| g | Moves that text above the bars instead.Y or N — put that line above the bars | N |
How it works
^BI prints Industrial 2 of 5, one of the oldest bar codes still in the ZPL command set. Each digit is five bars, two of them wide, and the spaces between bars carry nothing at all.
Throwing away the spaces makes it tolerant of poor print quality, which is why it survived in warehousing and on rough corrugated surfaces long after denser codes appeared. The cost is width: it is roughly twice as wide as Interleaved 2 of 5 for the same digits.
If you are choosing a symbology today rather than matching an existing specification, ^B2 (Interleaved 2 of 5) encodes the same data in half the space, and ^BC (Code 128) in less still.
Example
^XA
^BY2,3,80
^FO60,60^BIN,80,Y,N^FD12345670^FS
^XZRendering…
How the preview on this site handles it
Drawn with a real Industrial 2 of 5 encoder, so it scans, and rotation is applied. The wide-to-narrow ratio from ^BY is not applied: the preview always uses 3:1.
Common mistakes
- Sending non-digits. The symbology is numeric only and the field will not encode.
- Forgetting how wide it is. Check the label at the real ^BY module width before committing — this is the widest of the 2 of 5 family.
- Confusing it with Standard 2 of 5 (^BJ). They are different bar patterns, and a scanner set for one will not read the other.