Riferimento Comandi ZPL — Cheat Sheet per Stampanti Zebra
Aggiornato 11 giugno 2026
Questo è un riferimento operativo per i comandi ZPL II che coprono la grande maggioranza delle etichette reali: struttura del formato, testo, font, codici a barre, grafica e controllo stampante. Tutte le posizioni e dimensioni sono in punti stampante (203 dpi = 8 punti/mm — vedi Cos'è ZPL? per le basi). I parametri nella colonna sintassi sono: x,y = posizione dall'angolo in alto a sinistra, h,w = altezza e larghezza, o = orientamento (N normale, R 90°, I 180°, B 270°).
Formato etichetta
| Comando | Sintassi | Cosa fa |
|---|---|---|
^XA | ^XA | Inizio di un formato etichetta. Ogni etichetta inizia con questo comando. |
^XZ | ^XZ | Fine di un formato etichetta. La stampante renderizza e stampa l'etichetta quando riceve questo. |
^FX | ^FXcomment | Commento — ignorato dalla stampante. Terminarlo con ^FS come qualsiasi campo. |
^PW | ^PWwidth | Larghezza di stampa in punti. Impostare alla larghezza dell'etichetta per evitare che i campi vengano tagliati. |
^LL | ^LLlength | Lunghezza etichetta in punti. Necessaria principalmente per supporti continui (senza gap). |
^LH | ^LHx,y | Home etichetta — sposta l'origine per tutte le successive posizioni ^FO. |
^PQ | ^PQqty | Quantità di stampa — quante copie di questa etichetta stampare. |
^PR | ^PRspeed | Velocità di stampa in pollici al secondo. Più lenta spesso stampa più scura e nitida. |
^MD | ^MDdarkness | Regolazione scurezza supporto, da -30 a 30. Aumentare se la stampa è sbiadita. |
Campi e testo
| Comando | Sintassi | Cosa fa |
|---|---|---|
^FO | ^FOx,y | Field origin — posiziona il campo successivo a x,y punti dall'home etichetta. |
^FD | ^FDdata | Field data — il contenuto (testo o dati codice a barre) del campo corrente. |
^FS | ^FS | Field separator — chiude il campo corrente. Obbligatorio dopo ogni campo. |
^FB | ^FBwidth,lines,space,align | Field block — racchiude il testo ^FD in un blocco: larghezza max, righe max, interlinea, allineamento (L/C/R/J). |
^FR | ^FR | Field reverse — stampa il campo bianco su nero dove si sovrappone a un'area nera. |
^FH | ^FH | Field hexadecimal — consente escape _xx esadecimali in ^FD, es. _C3_A9 per é. |
^CI | ^CIencoding | Set di caratteri; ^CI28 seleziona UTF-8 ed è consigliato per qualsiasi testo non ASCII. |
Font
| Comando | Sintassi | Cosa fa |
|---|---|---|
^A | ^Afo,h,w | Font per il campo successivo: lettera font f (0–9, A–Z), orientamento, altezza e larghezza in punti. ^A0N,40,40 è il font scalabile predefinito a 40 punti. |
^CF | ^CFf,h,w | Cambia il font predefinito per tutti i campi successivi che non impostano il proprio ^A. |
^A@ | ^A@o,h,w,name | Usa un file font memorizzato nella stampante (es. TrueType scaricato). |
Il font 0 è il font vettoriale scalabile e la scelta standard; i font A–H sono font bitmap a dimensione fissa che hanno buon aspetto solo alle loro dimensioni native o multipli interi.
Codici a barre
| Comando | Sintassi | Cosa fa |
|---|---|---|
^BY | ^BYw,r,h | Impostazioni predefinite campo codice a barre: larghezza modulo (barra stretta) in punti, rapporto largo/stretto, altezza predefinita. Impostare prima del comando codice a barre. |
^BC | ^BCo,h,f,g,e,m | Code 128 — il codice a barre 1D standard per spedizioni e logistica. f=Y stampa la riga leggibile dall'uomo, g=Y la stampa sopra il codice. |
^B3 | ^B3o,e,h,f,g | Code 39 — simbologia 1D più vecchia ancora richiesta da alcune specifiche industriali e della difesa. |
^BE | ^BEo,h,f,g | Codice a barre EAN-13 retail (usare ^BU per UPC-A). |
^BQ | ^BQa,model,mag,ec | Codice QR. Magnification 1–10 imposta la dimensione del modulo; ec imposta la correzione errori (H/Q/M/L). Prefissare i dati con la modalità di codifica, es. ^FDQA,https://… |
^BX | ^BXo,h,s,c,r,f | Data Matrix — codice 2D compatto comune su etichette elettroniche e sanitarie. |
^B7 | ^B7o,h,m,c,r,t | PDF417 — codice 2D a strati usato su documenti d'identità e alcuni documenti logistici. |
Per un codice a barre leggibile, tre cose devono essere corrette: una larghezza modulo (^BY primo parametro) di almeno 2–3 punti a 203 dpi, una zona di silenzio di ~10 larghezze modulo di spazio vuoto su entrambi i lati, e altezza sufficiente (un codice a barre 1D sotto ~50 punti è difficile da leggere per gli scanner portatili).
Grafica
| Comando | Sintassi | Cosa fa |
|---|---|---|
^GB | ^GBw,h,t,c,r | Riquadro grafico: larghezza, altezza, spessore bordo, colore (B/W), arrotondamento angoli 0–8. Un ^GB sottile è il modo per disegnare linee. |
^GC | ^GCd,t,c | Cerchio grafico con diametro d e spessore bordo t. |
^GD | ^GDw,h,t,c,o | Linea diagonale grafica all'interno di un riquadro w×h; o imposta la direzione (L o R). |
^GF | ^GFa,b,c,d,data | Campo grafico — incorpora una bitmap (es. un logo) direttamente nell'etichetta come dati hex o binari. |
~DG | ~DGd:name,t,w,data | Scarica grafica — memorizza un'immagine nella stampante, poi posizionarla con ^XG. |
^XG | ^XGd:name,mx,my | Richiama una grafica memorizzata nell'origine del campo corrente, con ingrandimento x/y. |
Controllo e stato stampante
| Comando | Sintassi | Cosa fa |
|---|---|---|
~HS | ~HS | Stato host — la stampante risponde con informazioni su assenza carta, pausa, buffer e contaore. |
~HI | ~HI | Identificazione host — modello, versione firmware, DPI e memoria. |
^MM | ^MMmode | Modalità di stampa: T tear-off (strappo), P peel-off (stacco), R rewind (riavvolgi), C cutter (taglierina). |
^MN | ^MNtype | Tracciamento supporti: Y gap/web sensing, M black-mark, N continuo. |
~JC | ~JC | Avvia calibrazione supporti (la stampante avanza alcune etichette per trovare il gap). |
~JA | ~JA | Annulla tutti i formati etichetta nel buffer della stampante. |
^JUS | ^JUS | Salva le impostazioni correnti nella flash affinché sopravvivano a un ciclo di accensione. |
Mettere tutto insieme
Una tipica etichetta in stile spedizione 4×6 che utilizza la maggior parte dei gruppi sopra:
^XA
^PW812
^CI28
^CF0,32
^FO40,40^FDSHIP TO:^FS
^FO40,80^A0N,44,44^FDAcme Industries^FS
^FO40,130^FD500 Warehouse Way^FS
^FO40,170^FDSpringfield, IL 62701^FS
^FO40,230^GB732,3,3^FS
^FO40,260^FDOrder #A-10592 / 3 of 4^FS
^BY3,2,120
^FO140,320^BCN,120,Y,N,N^FD4210159200083^FS
^XZModificare manualmente le coordinate in punti diventa presto noioso — ogni modifica al layout significa cambiare numeri e ristampare. Se preferisci trascinare i campi nella posizione desiderata e lasciare che ZPL si scriva da solo, l'editor ZPLCraft compila una canvas visiva esattamente in questo tipo di ZPL pulito, e può stamparlo dal browser via USB.
Per dettagli esaustivi parametro per parametro oltre a questo cheat sheet, la fonte autorevole è il Manuale di Programmazione ZPL II di Zebra, disponibile gratuitamente dal sito di supporto Zebra.