^SZ
Set ZPL ModePreview: not drawnSwitches the printer between the original ZPL and ZPL II. Almost everything written today assumes ZPL II.
Syntax
^SZaParameters
| Parameter | Description and accepted values | If omitted |
|---|---|---|
| a | 1 for original ZPL, 2 for ZPL II.1 ZPL, 2 ZPL II | 2 |
How it works
^SZ selects which dialect the printer expects. ZPL II is the default on every modern Zebra printer and is what this reference, and almost every label in the wild, is written in.
The differences are small but they bite. The most visible is field ordering: under ZPL II, ^FS closes a field and the next field starts clean, while original ZPL had different rules about how a format was assembled.
The reason to know it exists is diagnostic. A printer in ZPL mode fed ZPL II output produces labels that are subtly wrong in ways that read like a template bug, and ^SZ2 is the one-line answer.
Example
^XA
^SZ2
^FO50,50^A0N,40^FDZPL II^FS
^XZRendering…
How the preview on this site handles it
Not drawn. This renderer implements ZPL II and only ZPL II, so ^SZ has nothing to switch — ^SZ2 matches what the preview already does, and ^SZ1 does not change it. The format previews as ZPL II either way.
Common mistakes
- Leaving a printer in ZPL mode. Labels come out subtly wrong and nothing reports an error.
- Setting it per label. It is a printer state; set it once, with ^JUS to keep it.
- Assuming the preview honours it. A label that depends on original-ZPL behaviour previews here as ZPL II.