Codici a Barre ZPL: Code 128, QR, EAN, Data Matrix

Aggiornato 30 settembre 2026

Codici a barre Code 128, QR, EAN-13 e Data Matrix generati da comandi ZPL su un’etichetta termica

I codici a barre sono il motivo per cui esistono la maggior parte delle etichette termiche. ZPL ha un comando dedicato per ogni simbologia comune, e la stampante disegna le barre da sola alla propria risoluzione nativa, ed è per questo che i codici a barre ZPL stampano più nitidi delle immagini di codici a barre.

Questa guida tratta i comandi che userai davvero: ^BY per le dimensioni, ^BC per Code 128 e GS1-128, ^BQ per i codici QR, ^BE per EAN-13, ^BX per Data Matrix e ^B7 per PDF417, con esempi funzionanti e le regole di dimensionamento che decidono se un codice a barre viene letto.

Quale comando ZPL usare per i codici a barre

Simbologie di codici a barre comuni e relativi comandi ZPL
SimbologiaComandoUso tipico
Code 128^BCSKU, numeri d’ordine, tracking e qualsiasi dato alfanumerico
GS1-128^BC … DDati logistici con identificatori applicativi GS1, etichette pallet SSCC
QR code^BQLink web, etichette di asset e scansione da mobile
EAN-13^BEProdotti al dettaglio al punto vendita
UPC-A^BUProdotti al dettaglio in Nord America
Data Matrix^BXPiccoli componenti, elettronica e sanità (GS1 DataMatrix)
PDF417^B7Documenti e ID che richiedono molti dati in un’area ridotta
Code 39^B3Sistemi industriali e automotive più datati
Interleaved 2 of 5^B2Cartoni di spedizione (ITF-14)

Dimensionare i codici a barre con ^BY

^BY imposta i valori predefiniti per i codici a barre che lo seguono: la larghezza del modulo (la larghezza della barra più sottile, in punti), il rapporto tra barre larghe e strette per le simbologie che lo usano e l’altezza delle barre. La larghezza del modulo decide quasi tutto di un codice a barre lineare, perché l’intero simbolo scala con essa.

^BYw,r,h
^BY2,3,100

A 203 dpi un punto misura 0,125 mm, quindi una larghezza del modulo di 2 dà barre da 0,25 mm e una larghezza del modulo di 3 dà barre da 0,375 mm. Gli scanner palmari di solito leggono senza problemi moduli da 2 punti; le etichette scansionate da lontano o su superfici curve traggono vantaggio da 3 o più. Poiché i moduli devono essere punti interi, un codice a barre non può essere allungato a una larghezza arbitraria senza cambiare il modo in cui viene letto.

Code 128 con ^BC

Code 128 codifica lettere, cifre e simboli in modo compatto ed è la scelta predefinita per SKU e numeri d’ordine. ^BC accetta l’orientamento, l’altezza delle barre, se stampare la riga leggibile (e se sopra o sotto) e una modalità. La stampante calcola automaticamente il carattere di controllo.

^XA
^BY2,3,90
^FO40,40^BCN,90,Y,N,N^FDSKU-100245^FS
^XZ

GS1-128 con ^BC modalità D

GS1-128 è Code 128 con identificatori applicativi (AI) GS1 come (01) per il GTIN, (10) per un lotto e (00) per un SSCC. Con la modalità D, scrivi gli AI tra parentesi in ^FD: la stampante inserisce i caratteri FNC1 necessari, lascia le parentesi fuori dai dati codificati e le stampa nella riga leggibile.

^XA
^BY2
^FO40,40^BCN,110,Y,N,N,D^FD(01)09520123456788(10)LOT7^FS
^XZ

I dati GS1 hanno regole rigide: AI a lunghezza fissa, cifre di controllo e caratteri consentiti. Il designer ZPLCraft include un assistente GS1 che costruisce i dati un AI alla volta e li convalida prima che arrivino sull’etichetta.

Codice a barre GS1-128 SSCC su un’etichetta di spedizione con l’assistente GS1 che mostra l’identificatore applicativo 00 e il suo valore
L’assistente GS1 convalida gli identificatori applicativi prima che vengano applicati.

Codici QR con ^BQ

^BQN,2,6 seleziona l’orientamento normale, il QR modello 2 e un ingrandimento di 6 (ogni modulo è di 6 × 6 punti). I dati del campo iniziano con il livello di correzione degli errori e la modalità di input seguiti da una virgola: LA, indica il livello L con input automatico. Usa H o Q al posto di L quando il codice può essere rovinato o parzialmente coperto.

^XA
^FO40,40^BQN,2,6^FDLA,https://example.com/p/100245^FS
^XZ

EAN-13 e UPC-A con ^BE e ^BU

Per EAN-13, invia le prime 12 cifre e la stampante aggiunge la cifra di controllo; UPC-A con ^BU funziona allo stesso modo con 11 cifre. I codici a barre per il retail devono usare un GTIN assegnato alla tua azienda da GS1 e non vanno ridimensionati sotto la dimensione richiesta dal tuo rivenditore.

^XA
^BY3
^FO40,40^BEN,90,Y,N^FD590123412345^FS
^XZ

Data Matrix e PDF417

^BX stampa Data Matrix: il secondo parametro è la dimensione di ogni modulo in punti e il livello di qualità 200 seleziona la versione standard ECC 200. Memorizza molti dati in un quadrato molto piccolo, ed è per questo che è comune su piccoli componenti e dispositivi medici. ^B7 stampa PDF417, un codice a barre impilato usato su documenti e ID; i suoi parametri impostano l’altezza delle righe e il livello di correzione degli errori.

^XA
^FO40,40^BXN,8,200^FD100245-LOT7^FS
^FO300,40^BY2^B7N,6,3,,,N^FDORDER 100245 / 3 PARCELS^FS
^XZ

Un esempio funzionante di codici a barre

Questa etichetta stampa uno per ogni simbologia comune su un’etichetta da 4 pollici a 203 dpi. Aprila nel visualizzatore per modificare dati e parametri e vedere i codici a barre aggiornarsi.

^XA
^PW812
^LL1000
^CI28
^CF0,28
^FO40,30^FDCode 128^FS
^BY2,3,90
^FO40,70^BCN,90,Y,N,N^FDSKU-100245^FS
^FO470,30^FDQR code^FS
^FO470,60^BQN,2,6^FDLA,https://example.com/p/100245^FS
^FO40,260^FDEAN-13^FS
^BY3
^FO40,300^BEN,90,Y,N^FD590123412345^FS
^FO470,260^FDData Matrix^FS
^FO470,300^BXN,8,200^FD100245-LOT7^FS
^FO40,500^FDGS1-128^FS
^BY2
^FO40,540^BCN,110,Y,N,N,D^FD(01)09520123456788(10)LOT7^FS
^FO40,730^FDPDF417^FS
^BY2
^FO40,770^B7N,6,3,,,N^FDORDER 100245 / 3 PARCELS^FS
^XZ

Apri questo esempio di codici a barre nel visualizzatore ZPL

Visualizzatore ZPL che renderizza codici a barre Code 128, QR, EAN-13, Data Matrix, GS1-128 e PDF417 dal codice di esempio
L’etichetta di esempio renderizzata nel visualizzatore ZPL.

Creare codici a barre senza scrivere ZPL

Nel designer ZPLCraft, aggiungi Code 128, QR Code o EAN / GS1 dal pannello Codici. Il pannello Proprietà espone le stesse impostazioni dei comandi ZPL: simbologia, contenuto, larghezza del modulo e altezza delle barre in punti, e se il testo leggibile è mostrato. Mantieni le dimensioni del codice adatta i valori che cambiano alle dimensioni attuali, utile quando il contenuto proviene da un foglio di calcolo.

Codice a barre Code 128 selezionato nell’editor ZPLCraft con le impostazioni di contenuto, simbologia, larghezza del modulo e altezza delle barre
Le proprietà del codice a barre corrispondono direttamente ai parametri ZPL.

Per i codici a barre GS1, l’assistente GS1 ti permette di scegliere ogni identificatore applicativo da un elenco, controlla lunghezze e cifre di controllo e mostra l’output canonico prima di applicarlo.

Come Creare un’Etichetta ZPL: Tutorial Passo Passo →

Perché un codice a barre ZPL non viene letto

  • Larghezza del modulo troppo piccola. I moduli da un punto a 203 dpi misurano 0,125 mm e molti scanner non riescono a risolverli. Aumenta la larghezza del modulo in ^BY.
  • Quiet zone mancante. I codici a barre lineari hanno bisogno di spazio vuoto su entrambi i lati, almeno dieci volte la larghezza del modulo per Code 128. Tieni testo e riquadri lontani dalle barre.
  • Codice a barre stampato come immagine. Un codice a barre ridimensionato come bitmap può finire con barre di larghezza irregolare. I comandi ZPL nativi per i codici a barre evitano questo problema.
  • Risoluzione della stampante sbagliata. Il ZPL scritto per 203 dpi stampa a circa due terzi della dimensione prevista su una stampante a 300 dpi, il che può ridurre i moduli sotto ciò che uno scanner legge.
  • Intensità o velocità di stampa. Barre che si impastano o si spezzano dipendono spesso da un’impostazione di intensità o velocità della stampante, non da un problema di design.

Domande sui codici a barre ZPL

Come faccio a ingrandire un codice a barre ZPL?

Aumenta la larghezza del modulo in ^BY per i codici a barre lineari, l’ingrandimento in ^BQ per i codici QR o la dimensione del modulo in ^BX per Data Matrix. Aumenta il parametro dell’altezza per barre più alte. La larghezza cambia sempre a passi di punti interi.

La stampante calcola le cifre di controllo?

Sì per le simbologie che ne richiedono una: Code 128 aggiunge automaticamente il suo carattere di controllo, mentre ^BE e ^BU calcolano la cifra di controllo di EAN-13 e UPC-A dalle prime 12 o 11 cifre.

Quale codice a barre devo usare per un’etichetta di spedizione?

Segui le specifiche del corriere. I codici a barre di tracking dei corrieri sono di solito Code 128 o GS1-128, e molti corrieri aggiungono un codice 2D come MaxiCode o PDF417.

Posso visualizzare in anteprima i codici a barre ZPL senza una stampante?

Sì. Il visualizzatore ZPL renderizza nel tuo browser Code 128, QR, EAN, UPC, Data Matrix, PDF417 e altre simbologie comuni. Un’anteprima non può dimostrare le prestazioni di lettura, quindi prova l’etichetta stampata con lo scanner che usi.

Fonti