# EditorZPL — full reference for LLMs > Free online ZPL label editor and toolkit for Zebra (and compatible) thermal printers. Everything runs client-side in the browser — no install, no sign-up, no data sent to servers. UI in Spanish, English, German, French, Italian and Brazilian Portuguese (locale-prefixed URLs, e.g. /en/, /es/). This is the expanded companion to /llms.txt. It inlines the reference content so an AI assistant has full context without crawling every page. ## Tools - ZPL Editor (https://editorzpl.com/en): visual drag-and-drop editor + ZPL code editor, live preview, PNG/PDF/ZPL export, batch export. - ZPL Viewer (https://editorzpl.com/en/zpl-viewer): paste ZPL, preview instantly, download PNG or open in editor. - ZPL to PDF (https://editorzpl.com/en/zpl-to-pdf) and ZPL to PNG (https://editorzpl.com/en/zpl-to-png). - Image to ZPL (https://editorzpl.com/en/image-to-zpl): PNG/JPG → ZPL ^GF graphics. - Barcode generator (https://editorzpl.com/en/barcode-generator): Code 128, Code 39, EAN-13, EAN-8, UPC, QR → ZPL. - QR code generator (https://editorzpl.com/en/qr-generator): QR → ZPL ^BQ with selectable error correction. - EPL2 to ZPL (https://editorzpl.com/en/epl2-to-zpl), DPL to ZPL (https://editorzpl.com/en/dpl-to-zpl), TSPL to ZPL (https://editorzpl.com/en/tspl-to-zpl). - Label templates (https://editorzpl.com/en/templates). - API waitlist (https://editorzpl.com/en/zpl-api): upcoming REST API to render ZPL to PNG/PDF, convert images to ZPL and generate labels in bulk. ## ZPL command reference Guides at https://editorzpl.com/en/guias-zpl. Each command below links from /guias-zpl/comando-. ### ^FO — Field Origin Positions the next element (text, barcode, box) relative to the origin. Values: X,Y in dots. Example: ^FO50,120 (X to the right, Y down). Tip: Combine with ^FS to close the field. Use ^FT if you want baseline reference. Example: ```zpl ^XA ^FO50,50^A0N,40,40^FDEditorZPL^FS ^XZ ``` ### ^FD — Field Data Field content (text or data for barcode/QR). Values: Example: ^FDHello World^FS or ^FD123456789^FS Tip: For barcodes, the content must match the standard length/format. Example: ```zpl ^XA ^FO50,50^A0N,40,40^FDHola Mundo^FS ^XZ ``` ### ^FS — Field Separator Ends the current field. Values: Closes the text/code/box defined by ^FD. Tip: Every field must end with ^FS for the printer to process it. Example: ```zpl ^XA ^FO50,50^A0N,40,40^FDTexto^FS ^XZ ``` ### ^A0 — Font A0 Selects text font and size. Values: Orientation, height, width. Example: ^A0N,40,40 Tip: Orientation: N (normal), R (90°), I (180°), B (270°). Example: ```zpl ^XA ^FO50,50^A0N,50,50^FDTexto grande^FS ^XZ ``` ### ^CF — Default font Defines the default font/size for texts. Values: Example: ^CF0,30 Tip: Affects subsequent fields unless a specific font is set. Example: ```zpl ^XA ^CF0,40 ^FO50,50^FDTexto^FS ^XZ ``` ### ^GB — Graphic Box Draws lines or boxes. Values: Width, height, thickness. Example: ^GB700,3,3 Tip: If height or width is 0, a line is drawn. Example: ```zpl ^XA ^FO50,50^GB300,200,3^FS ^XZ ``` ### ^BY — Barcode Field Default Defines module width and default barcode height. Values: Example: ^BY3,2,80 (module, ratio, height) Tip: Use ^BY before barcode commands (^BC, ^B3, ^BE, etc.). Example: ```zpl ^XA ^BY3,2,100 ^FO50,50^BCN,100,Y,N,N^FD123456789^FS ^XZ ``` ### ^BC — Code 128 barcode Generates a Code 128 barcode. Values: Example: ^BCN,100,Y,N,N Tip: Common params: orientation, height, human‑readable text (Y/N). Example: ```zpl ^XA ^FO50,50^BCN,100,Y,N,N^FD123456789^FS ^XZ ``` ### ^B3 — Code 39 barcode Generates a Code 39 barcode. Values: Example: ^B3N,N,100,Y,N Tip: Requires valid Code 39 character set. Example: ```zpl ^XA ^FO50,50^B3N,N,100,Y,N^FDCODE39^FS ^XZ ``` ### ^BE — EAN‑13 barcode Generates an EAN‑13 barcode. Values: Example: ^BEN,80,Y,N Tip: Requires 12 digits; checksum is calculated automatically. Example: ```zpl ^XA ^FO50,50^BEN,100,Y,N^FD123456789012^FS ^XZ ``` ### ^BQ — QR code Generates a QR code. Values: Example: ^BQN,2,6 Tip: Adjust magnification for size and correction level for robustness. Example: ```zpl ^XA ^FO50,50^BQN,2,6^FDLA,https://editorzpl.com^FS ^XZ ``` ### ^PW — Print Width Label print width. Values: In dots. Example: ^PW812 Tip: Usually near the start together with ^LL to define size. Example: ```zpl ^XA ^PW812 ^FO50,50^A0N,40,40^FDAncho 812 dots^FS ^XZ ``` ### ^LL — Label Length Label height. Values: In dots. Example: ^LL1218 Tip: Combine with ^PW for full size. Example: ```zpl ^XA ^LL1218 ^FO50,50^A0N,40,40^FDLargo 1218 dots^FS ^XZ ``` ### ^XA — Label start Marks the beginning of the ZPL format. Values: Everything that follows belongs to the current label. Tip: Usually placed at the beginning alongside ^PW/^LL when defining label size. Example: ```zpl ^XA ^FO50,50^A0N,40,40^FDEditorZPL^FS ^XZ ``` ### ^XZ — Label end Closes the ZPL format. Values: Sends the label to print or render. Tip: Ensure each ^XA is closed with ^XZ to avoid incomplete output. Example: ```zpl ^XA ^FO50,50^A0N,40,40^FDEditorZPL^FS ^XZ ``` ### ^PR — Print Rate Print speed. Values: Example: ^PR4,4,4 Tip: Higher speeds can reduce quality on some materials. Example: ```zpl ^XA ^PR4 ^FO50,50^A0N,40,40^FDVelocidad 4^FS ^XZ ``` ### ^MT — Media Type Material type: transfer or direct. Values: ^MTT (transfer), ^MTD (direct) Tip: Transfer uses ribbon; direct does not. Example: ```zpl ^XA ^MTD ^FO50,50^A0N,40,40^FDTermica directa^FS ^XZ ``` ### ^MM — Print Mode Print mode (tear‑off, peel‑off, cutter). Values: Example: ^MMT, ^MMP, ^MMC Tip: Mode must match the printer hardware configuration. Example: ```zpl ^XA ^MMT ^FO50,50^A0N,40,40^FDModo tear-off^FS ^XZ ``` ### ^LT — Label Top Vertical shift of the label. Values: In dots. Example: ^LT10 Tip: Useful for correcting small print offsets. Example: ```zpl ^XA ^LT10 ^FO50,50^A0N,40,40^FDLabel Top^FS ^XZ ``` ### ^LS — Label Shift Horizontal shift of the label. Values: In dots. Example: ^LS-5 Tip: Fine horizontal adjustment without changing each ^FO. Example: ```zpl ^XA ^LS10 ^FO50,50^A0N,40,40^FDLabel Shift^FS ^XZ ``` ### ^FR — Field Reverse Inverts field colors (black background, white text). Tip: Applies to the next field and then resets. Example: ```zpl ^XA ^FO50,50^GB260,90,90^FS ^FO60,60^FR^A0N,40,40^FDREVERSE^FS ^XZ ``` ### ^SD — Print Darkness Print darkness/temperature. Values: 0 to 30. Example: ~SD15 Tip: High values can burn ribbon or smudge on thermal. Example: ```zpl ^XA ^SD15 ^FO50,50^A0N,40,40^FDDarkness 15^FS ^XZ ``` ## Label size reference Dots (pixels) are computed as inches × DPI. Guides at https://editorzpl.com/en/guias-zpl. - 100 × 150 mm (3.94×5.91 in): 203 DPI → 799×1199 px · 300 DPI → 1181×1772 px · 600 DPI → 2362×3543 px - 100 × 100 mm (3.94×3.94 in): 203 DPI → 799×799 px · 300 DPI → 1181×1181 px · 600 DPI → 2362×2362 px - 100 × 50 mm (3.94×1.97 in): 203 DPI → 799×400 px · 300 DPI → 1181×591 px · 600 DPI → 2362×1181 px - 60 × 40 mm (2.36×1.57 in): 203 DPI → 480×320 px · 300 DPI → 709×472 px · 600 DPI → 1417×945 px - 50 × 30 mm (1.97×1.18 in): 203 DPI → 400×240 px · 300 DPI → 591×354 px · 600 DPI → 1181×709 px - 50 × 25 mm (1.97×0.98 in): 203 DPI → 400×200 px · 300 DPI → 591×295 px · 600 DPI → 1181×591 px - 40 × 30 mm (1.57×1.18 in): 203 DPI → 320×240 px · 300 DPI → 472×354 px · 600 DPI → 945×709 px - 38 × 25 mm (1.5×0.98 in): 203 DPI → 304×200 px · 300 DPI → 449×295 px · 600 DPI → 898×591 px ## Zebra printer reference ZPL-relevant specs. Guides at https://editorzpl.com/en/guias-zpl. - Zebra ZD230: 203 DPI, max print width 104 mm (4.09 in), desktop, direct thermal + thermal transfer - Zebra ZD888: 203 DPI, max print width 104 mm (4.09 in), desktop, direct thermal + thermal transfer - Zebra GK420d: 203 DPI, max print width 104 mm (4.09 in), desktop, direct thermal - Zebra ZD420: 203/300 DPI, max print width 108 mm (4.25 in), desktop, direct thermal + thermal transfer - Zebra ZD621: 203/300 DPI, max print width 108 mm (4.25 in), desktop, direct thermal + thermal transfer - Zebra GX430t: 300 DPI, max print width 104 mm (4.09 in), desktop, thermal transfer - Zebra ZT230: 203/300 DPI, max print width 104 mm (4.09 in), industrial, direct thermal + thermal transfer ## Key facts - Free, browser-based, privacy-friendly (no data leaves the device). - Works with Zebra and compatible thermal printers that use ZPL. - Converts to ZPL from EPL2 (Eltron), DPL (Datamax) and TSPL (TSC). - Comparison with the main alternative: https://editorzpl.com/en/labelary-alternative.