Cos'è ZPL? Il Linguaggio Zebra Spiegato
ZPLCraftAggiornato 17 agosto 2026

ZPL (linguaggio di programmazione Zebra) è il linguaggio di comandi usato dalle stampanti termiche Zebra e compatibili per descrivere le etichette. Invece di ricevere un’immagine finita, una stampante ZPL riceve un breve blocco di comandi in testo semplice, li interpreta e renderizza l’etichetta con la risoluzione della testina configurata.
ZPL utilizza comandi di testo compatti che possono essere generati da applicazioni come sistemi ERP, script e strumenti del browser. Il supporto dipende dal modello e dalla configurazione: Zebra documenta ZPL II nelle specifiche dei singoli modelli, e alcune stampanti di altri produttori offrono una modalità di emulazione compatibile con ZPL documentata.
Com'è fatta un'etichetta ZPL
Un documento ZPL è una sequenza di comandi, ciascuno che inizia con un accento circonflesso (^). Ogni etichetta è racchiusa tra ^XA (inizio formato) e ^XZ (fine formato). Ecco un'etichetta completa e funzionante:
^XA
^CF0,40
^FO50,50^FDHELLO WORLD^FS
^FO50,110^GB700,4,4^FS
^BY3,2,100
^FO150,150^BCN,100,Y,N,N^FD12345678^FS
^XZLeggendola riga per riga:
^XA…^XZ— aprono e chiudono il formato etichetta. Tutto ciò che è in mezzo descrive un'etichetta.^CF0,40— imposta il font predefinito al font scalabile 0 a 40 punti di altezza.^FO50,50— Field Origin: posiziona il campo successivo a 50 punti dal margine sinistro e 50 punti dall'alto.^FDHELLO WORLD^FS— Field Data seguito da Field Separator: il contenuto effettivo del campo.^GB700,4,4— disegna un Graphic Box largo 700 punti e alto 4 punti — qui utilizzato come separatore orizzontale.^BY3,2,100poi^BCN,100,Y,N,N— imposta le impostazioni predefinite del codice a barre (larghezza modulo, rapporto, altezza), poi renderizza un codice a barre Code 128 con i dati12345678e una riga leggibile dall'uomo sottostante.
Punti, non pixel: capire i DPI
Ogni coordinata e dimensione in ZPL è misurata in punti stampante, e la dimensione fisica di un punto dipende dalla risoluzione della testina di stampa. Le risoluzioni comuni sono 203 dpi (8 punti/mm), 300 dpi (12 punti/mm) e 600 dpi (24 punti/mm). Su una stampante a 203 dpi un’etichetta di spedizione 4 × 6 pollici è 812 × 1218 punti; su una stampante a 300 dpi la stessa etichetta è 1200 × 1800 punti. Lo ZPL scritto per una risoluzione stampa più piccolo o più grande su un’altra; una differenza di DPI è quindi una causa comune del problema «la mia etichetta sembra sbagliata sulla nuova stampante». Le dimensioni devono essere scalate al DPI di destinazione.
ZPL vs. EPL vs. stampa con driver
Potresti imbatterti anche in EPL (Eltron Programming Language), utilizzato da alcune stampanti meno recenti o esplicitamente compatibili. Il supporto di ZPL ed EPL varia in base al modello e al firmware, quindi consulta la documentazione del produttore prima di scegliere un linguaggio. L’alternativa all’invio diretto di un linguaggio di stampa è la stampa con driver, nella quale un driver Windows o CUPS prepara una pagina renderizzata per la stampante configurata. Lo ZPL grezzo può offrire controllo diretto delle coordinate e payload di testo compatti, mentre la stampa con driver può essere più adatta quando il dispositivo o il sistema operativo non offre un percorso ZPL grezzo compatibile.
Come scrivere — o generare — ZPL
Per un'etichetta una tantum, scrivere ZPL a mano con un riferimento comandi aperto è assolutamente fattibile: il linguaggio è piccolo e una manciata di comandi (^FO, ^FD, ^A, ^BC, ^GB) copre la maggior parte delle etichette reali. Il problema inizia quando devi iterare su un layout — ogni aggiustamento significa modificare coordinate in punti, rinviare il file e sprecare materiale etichette.
È questo il problema risolto dagli editor visuali. ZPLCraft offre una canvas in scala reale dove puoi posizionare testo, codici a barre, linee e riquadri e generare ZPL ridimensionato per il DPI selezionato. Dati, dimensioni e quiet zone dei codici a barre devono comunque rispettare i requisiti della simbologia scelta, e il risultato stampato va verificato con la stampante e lo scanner di destinazione. Puoi esportare il codice in un sistema che invia già ZPL, oppure usare la stampa WebUSB dal browser quando browser, sistema operativo e stampante offrono un’interfaccia compatibile e acquisibile.
Domande di base frequenti
ZPL è gratuito da usare?
Zebra pubblica la guida di programmazione ZPL II come riferimento accessibile al pubblico, e puoi scrivere comandi ZPL con un editor di testo. Software, font, firmware e marchi della stampante possono avere condizioni di licenza proprie.
Quale estensione di file usa ZPL?
Non c'è un'estensione obbligatoria — ZPL è testo normale. Troverai .zpl, .txt e .prn nella pratica; le stampanti non si curano dell'estensione, consumano semplicemente il flusso di byte.
Posso visualizzare in anteprima ZPL senza una stampante?
Sì — servizi di rendering come Labelary convertono ZPL in un'immagine, e l'editor di ZPLCraft mostra un'anteprima live dell'etichetta mentre si progetta, così si spende materiale etichette solo quando il layout è definitivo.
Quali stampanti sono compatibili con ZPL?
La compatibilità dipende dal modello e dalla configurazione. Controlla nelle specifiche del produttore il supporto di ZPL o ZPL II o una modalità di emulazione documentata, conferma il DPI di destinazione e le funzioni necessarie e prova il percorso di output effettivo. La sola connettività USB o TCP sulla porta 9100 non dimostra che una stampante accetti ZPL. Compatibilità e consiglio