ZPL-barcodes: Code 128, QR, EAN en Data Matrix

Bijgewerkt 30 september 2026

Code 128-, QR-, EAN-13- en Data Matrix-barcodes gegenereerd met ZPL-commando’s op een thermisch etiket

Barcodes zijn de reden dat de meeste thermische etiketten bestaan. ZPL heeft voor elke gangbare symbologie een eigen commando, en de printer tekent de strepen zelf op zijn native resolutie, en daarom drukken ZPL-barcodes scherper af dan barcodeafbeeldingen.

Deze handleiding behandelt de commando’s die je echt gebruikt: ^BY voor de afmetingen, ^BC voor Code 128 en GS1-128, ^BQ voor QR-codes, ^BE voor EAN-13, ^BX voor Data Matrix en ^B7 voor PDF417, met werkende voorbeelden en de dimensioneringsregels die bepalen of een barcode scant.

Welk ZPL-barcodecommando je gebruikt

Veelgebruikte barcodesymbologieën en hun ZPL-commando’s
SymbologieCommandoTypisch gebruik
Code 128^BCSKU’s, ordernummers, tracking en alle alfanumerieke gegevens
GS1-128^BC … DLogistieke gegevens met GS1-toepassingsidentificatoren, SSCC-palletetiketten
QR code^BQWeblinks, assetlabels en scannen met mobiele apparaten
EAN-13^BERetailproducten aan de kassa
UPC-A^BURetailproducten in Noord-Amerika
Data Matrix^BXKleine onderdelen, elektronica en gezondheidszorg (GS1 DataMatrix)
PDF417^B7Documenten en id’s die veel gegevens in een klein oppervlak nodig hebben
Code 39^B3Oudere industriële en automotive-systemen
Interleaved 2 of 5^B2Verzenddozen (ITF-14)

Barcodes dimensioneren met ^BY

^BY stelt de standaardwaarden in voor de barcodes die erop volgen: de modulebreedte (de breedte van de smalste streep, in dots), de verhouding tussen brede en smalle strepen voor symbologieën die daar gebruik van maken en de streephoogte. De modulebreedte bepaalt bijna alles van een lineaire barcode, omdat het hele symbool ermee meeschaalt.

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

Bij 203 dpi is één dot 0,125 mm, dus een modulebreedte van 2 geeft strepen van 0,25 mm en een modulebreedte van 3 geeft strepen van 0,375 mm. Handscanners lezen modules van 2 dots meestal probleemloos; etiketten die van een afstand of op gebogen oppervlakken worden gescand hebben baat bij 3 of meer. Omdat modules hele dots moeten zijn, kan een barcode niet naar een willekeurige breedte worden uitgerekt zonder te veranderen hoe hij scant.

Code 128 met ^BC

Code 128 codeert letters, cijfers en symbolen compact en is de standaardkeuze voor SKU’s en ordernummers. ^BC neemt de oriëntatie, de streephoogte, of de leesbare regel wordt afgedrukt (en of die boven of onder komt) en een modus. De printer berekent het controleteken automatisch.

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

GS1-128 met ^BC modus D

GS1-128 is Code 128 met GS1-toepassingsidentificatoren (AI’s) zoals (01) voor de GTIN, (10) voor een batch of lot en (00) voor een SSCC. Met modus D schrijf je de AI’s tussen haakjes in ^FD: de printer voegt de vereiste FNC1-tekens in, laat de haakjes buiten de gecodeerde gegevens en drukt ze af in de leesbare regel.

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

GS1-gegevens hebben strikte regels: AI’s met vaste lengte, controlecijfers en toegestane tekens. De ZPLCraft-designer bevat een GS1-assistent die de gegevens AI voor AI opbouwt en valideert voordat ze op het etiket terechtkomen.

GS1-128 SSCC-barcode op een verzendetiket met de GS1-assistent die toepassingsidentificator 00 en de bijbehorende waarde toont
De GS1-assistent valideert toepassingsidentificatoren voordat ze worden toegepast.

QR-codes met ^BQ

^BQN,2,6 kiest de normale oriëntatie, QR-model 2 en een vergroting van 6 (elke module is 6 × 6 dots). De veldgegevens beginnen met het foutcorrectieniveau en de invoermodus gevolgd door een komma: LA, betekent niveau L met automatische invoer. Gebruik H of Q in plaats van L wanneer de code beschadigd of gedeeltelijk bedekt kan raken.

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

EAN-13 en UPC-A met ^BE en ^BU

Voor EAN-13 stuur je de eerste 12 cijfers en de printer voegt het controlecijfer toe; UPC-A met ^BU werkt op dezelfde manier met 11 cijfers. Retailbarcodes moeten een GTIN gebruiken die door GS1 aan jouw bedrijf is toegewezen en mogen niet kleiner worden geschaald dan je retailer voorschrijft.

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

Data Matrix en PDF417

^BX drukt Data Matrix af: de tweede parameter is de grootte van elke module in dots en kwaliteitsniveau 200 kiest de standaardversie ECC 200. Het slaat veel gegevens op in een heel klein vierkant, en daarom is het gebruikelijk op kleine onderdelen en medische hulpmiddelen. ^B7 drukt PDF417 af, een gestapelde barcode die op documenten en id’s wordt gebruikt; de parameters bepalen de rijhoogte en het foutcorrectieniveau.

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

Een werkend barcodevoorbeeld

Dit etiket drukt van elke gangbare symbologie één af op een etiket van 4 inch bij 203 dpi. Open het in de viewer om de gegevens en parameters te wijzigen en de barcodes live te zien veranderen.

^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

Open dit barcodevoorbeeld in de ZPL viewer

ZPL viewer die Code 128-, QR-, EAN-13-, Data Matrix-, GS1-128- en PDF417-barcodes rendert uit de voorbeeldcode
Het voorbeeldetiket gerenderd in de ZPL viewer.

Barcodes maken zonder ZPL te schrijven

Voeg in de ZPLCraft-designer Code 128, QR Code of EAN / GS1 toe via het paneel Codes. Het paneel Eigenschappen toont dezelfde instellingen als de ZPL-commando’s: symbologie, inhoud, modulebreedte en streephoogte in dots, en of de leesbare tekst wordt getoond. Barcodeformaat behouden past veranderende waarden aan binnen de huidige afmetingen, handig wanneer de inhoud uit een spreadsheet komt.

Code 128-barcode geselecteerd in de ZPLCraft-editor met instellingen voor inhoud, symbologie, modulebreedte en streephoogte
Barcode-eigenschappen komen rechtstreeks overeen met ZPL-parameters.

Bij GS1-barcodes laat de GS1-assistent je elke toepassingsidentificator uit een lijst kiezen, controleert lengtes en controlecijfers en toont de canonieke uitvoer voordat die wordt toegepast.

Een ZPL-etiket maken: stapsgewijze tutorial →

Waarom een ZPL-barcode niet scant

  • Modulebreedte te klein. Modules van één dot bij 203 dpi zijn 0,125 mm en veel scanners kunnen die niet oplossen. Vergroot de modulebreedte in ^BY.
  • Ontbrekende quiet zone. Lineaire barcodes hebben aan beide kanten lege ruimte nodig, bij Code 128 minstens tien keer de modulebreedte. Houd tekst en kaders uit de buurt van de strepen.
  • Barcode afgedrukt als afbeelding. Een barcode die als bitmap is geschaald, kan strepen van ongelijke breedte krijgen. Native ZPL-barcodecommando’s voorkomen dit.
  • Verkeerde printerresolutie. ZPL die voor 203 dpi is geschreven, drukt op een printer van 300 dpi af op ongeveer tweederde van de bedoelde grootte, waardoor modules kleiner kunnen worden dan een scanner kan lezen.
  • Afdrukdonkerheid of snelheid. Strepen die in elkaar overlopen of afbrokkelen komen vaak door een donkerheids- of snelheidsinstelling van de printer, niet door een ontwerpprobleem.

Vragen over ZPL-barcodes

Hoe maak ik een ZPL-barcode groter?

Vergroot de modulebreedte in ^BY voor lineaire barcodes, de vergroting in ^BQ voor QR-codes of de modulegrootte in ^BX voor Data Matrix. Vergroot de hoogteparameter voor hogere strepen. De breedte verandert altijd in stappen van hele dots.

Berekent de printer controlecijfers?

Ja voor de symbologieën die er een vereisen: Code 128 voegt zijn controleteken automatisch toe, en ^BE en ^BU berekenen het controlecijfer van EAN-13 en UPC-A uit de eerste 12 of 11 cijfers.

Welke barcode moet ik gebruiken voor een verzendetiket?

Volg de specificatie van de vervoerder. Tracking-barcodes van vervoerders zijn meestal Code 128 of GS1-128, en veel vervoerders voegen een 2D-code toe zoals MaxiCode of PDF417.

Kan ik ZPL-barcodes bekijken zonder printer?

Ja. De ZPL viewer rendert Code 128, QR, EAN, UPC, Data Matrix, PDF417 en andere gangbare symbologieën in je browser. Een voorbeeld kan de scanprestaties niet bewijzen, dus test het afgedrukte etiket met de scanner die je gebruikt.

Bronnen