Convert printer language to ZPL
printer_language_to_zplConvert a SATO SBPL, Honeywell (Datamax) DPL or Honeywell (Intermec) IPL label stream to ZPL, so it can be checked with zpl_validate and rendered with zpl_preview. You must name the source language: language_detect does not recognise these three. Real control characters and the manuals' readable notation (, ) are both accepted. Commands outside the supported subset (printer settings, RFID, job management, some 2D symbologies) are skipped with a warning, never silently: non-empty warnings mean the conversion is not 1:1 and one_to_one is false — show the warnings to the user. The output follows each manufacturer's command reference and is not verified on physical printers; check a preview and a test print before production.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | Raw SBPL, DPL or IPL label stream | |
| dpmm | No | Target printer density in dots per mm (8 = 203 dpi) | |
| label_length_mm | No | DPL only: label length in mm. DPL measures rows from the bottom edge, ZPL from the top; without it (or <STX>c in the stream) 6 inches is assumed and a warning is added. | |
| source_language | Yes | Language of `code`: sbpl (SATO), dpl (Datamax / Honeywell) or ipl (Intermec / Honeywell) |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| zpl | Yes | Converted ZPL, one ^XA...^XZ block per label | |
| note | No | ||
| warnings | Yes | Everything not carried over, with the manual page | |
| one_to_one | Yes | True only when warnings is empty | |
| source_language | Yes |