ZPL-barcodes: Code 128, QR, EAN en Data Matrix
ZPLCraftBijgewerkt 30 september 2026

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
| Symbologie | Commando | Typisch gebruik |
|---|---|---|
| Code 128 | ^BC | SKU’s, ordernummers, tracking en alle alfanumerieke gegevens |
| GS1-128 | ^BC … D | Logistieke gegevens met GS1-toepassingsidentificatoren, SSCC-palletetiketten |
| QR code | ^BQ | Weblinks, assetlabels en scannen met mobiele apparaten |
| EAN-13 | ^BE | Retailproducten aan de kassa |
| UPC-A | ^BU | Retailproducten in Noord-Amerika |
| Data Matrix | ^BX | Kleine onderdelen, elektronica en gezondheidszorg (GS1 DataMatrix) |
| PDF417 | ^B7 | Documenten en id’s die veel gegevens in een klein oppervlak nodig hebben |
| Code 39 | ^B3 | Oudere industriële en automotive-systemen |
| Interleaved 2 of 5 | ^B2 | Verzenddozen (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,100Bij 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
^XZGS1-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
^XZGS1-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.

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
^XZEAN-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
^XZData 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
^XZEen 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
^XZOpen dit barcodevoorbeeld 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.

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.