Wat is ZPL? Zebra Programmeertaal Uitgelegd

Bijgewerkt 17 augustus 2026

ZPL-commando’s die van een computer naar een thermische printer en een voltooid barcode-etiket gaan

ZPL (Zebra-programmeertaal) is de commandotaal die Zebra en compatibele thermische printers gebruiken om etiketten te beschrijven. In plaats van een afgewerkte afbeelding ontvangt een ZPL-printer een kort blok platte-tekstcommando’s, interpreteert die en rendert het etiket met de ingestelde printkopresolutie.

ZPL gebruikt compacte tekstcommando’s die toepassingen zoals ERP-systemen, scripts en browsertools kunnen genereren. Printerondersteuning hangt af van model en configuratie: Zebra documenteert ZPL II in de specificaties van afzonderlijke modellen, en sommige printers van andere fabrikanten bieden een gedocumenteerde ZPL-compatibele emulatiemodus.

Hoe een ZPL-etiket eruitziet

Een ZPL-document is een reeks commando's, elk beginnend met een dakje (^). Elk etiket is ingekapseld tussen ^XA (beginformaat) en ^XZ (eindformaat). Hier is een volledig, werkend etiket:

^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
^XZ

Regel voor regel gelezen:

  • ^XA^XZ — open en sluit het labelformaat. Alles daartussen beschrijft één etiket.
  • ^CF0,40 — stel het standaardlettertype in op het schaalbare lettertype 0 van 40 dots hoog.
  • ^FO50,50Field Origin: positioneer het volgende veld 50 dots van links en 50 dots van boven.
  • ^FDHELLO WORLD^FSField Data gevolgd door Field Separator: de daadwerkelijke inhoud van het veld.
  • ^GB700,4,4 — teken een Graphic Box van 700 dots breed en 4 dots hoog — hier gebruikt als een horizontale lijn.
  • ^BY3,2,100 dan ^BCN,100,Y,N,N — stel barcodestandaarden in (modulebreedte, verhouding, hoogte), render vervolgens een Code 128 barcode met de data 12345678 en een leesbare regel eronder.

Dots, geen pixels: DPI begrijpen

Elke coördinaat en grootte in ZPL wordt gemeten in printerdots, en de fysieke grootte van een dot hangt af van de resolutie van de printkop. De gangbare resoluties zijn 203 dpi (8 dots/mm), 300 dpi (12 dots/mm) en 600 dpi (24 dots/mm). Op een 203 dpi-printer is een 4 × 6 inch verzendlabel 812 × 1218 dots; op een 300 dpi-printer is hetzelfde label 1200 × 1800 dots. ZPL voor één resolutie print kleiner of groter op een andere; een verschil in DPI is daarom een veelvoorkomende oorzaak van “mijn etiket ziet er verkeerd uit op de nieuwe printer”. Afmetingen moeten naar de doel-DPI worden geschaald.

ZPL vs. EPL vs. drivergebaseerd printen

Je kunt ook EPL (Eltron Programming Language), dat door sommige oudere of expliciet compatibele printers wordt gebruikt. Ondersteuning voor ZPL en EPL verschilt per model en firmware; raadpleeg daarom de documentatie van de fabrikant voordat je een taal kiest. Het alternatief voor rechtstreekse uitvoer in een printertaal is drivergebaseerd printen, waarbij een Windows- of CUPS-driver een gerenderde pagina voorbereidt voor de ingestelde printer. Ruwe ZPL kan directe coördinatenbesturing en compacte tekstpayloads bieden, terwijl drivergebaseerd printen geschikter kan zijn wanneer het apparaat of besturingssysteem geen compatibel pad voor ruwe ZPL biedt.

Hoe je ZPL schrijft — of genereert

Voor een eenmalig etiket is ZPL met de hand schrijven met een commando referentie open heel goed mogelijk: de taal is compact, en een handvol commando's (^FO, ^FD, ^A, ^BC, ^GB) dekt de meeste echte etiketten. De pijn begint wanneer je een opmaak moet itereren — elke aanpassing betekent dot-coördinaten bewerken, het bestand opnieuw sturen en labelmateriaal verspillen.

Dat is het probleem dat visuele editors oplossen. ZPLCraft biedt een canvas op ware grootte waarop je tekst, barcodes, lijnen en kaders positioneert en ZPL genereert dat is geschaald voor de geselecteerde printer-DPI. Barcodegegevens, afmetingen en rustige zones moeten nog steeds voldoen aan de eisen van de gekozen symbologie, en de afdruk moet worden gecontroleerd met de beoogde printer en scanner. Je kunt de code exporteren naar een systeem dat al ZPL verstuurt, of WebUSB-printen vanuit de browser gebruiken wanneer browser, besturingssysteem en printer een compatibele, claimbare interface aanbieden.

Veelgestelde basisvragen

Is ZPL gratis te gebruiken?

Zebra publiceert de ZPL II-programmeerhandleiding als openbare referentie, en je kunt ZPL-commando’s met een teksteditor schrijven. Voor printersoftware, lettertypen, firmware en handelsmerken kunnen eigen licentievoorwaarden gelden.

Welke bestandsextensie gebruikt ZPL?

Er is geen verplichte extensie — ZPL is platte tekst. Je ziet .zpl, .txt en .prn in het wild; printers geven er niets om, zij verwerken gewoon de bytestroom.

Kan ik ZPL vooraf bekijken zonder een printer?

Ja — renderdiensten zoals Labelary zetten ZPL om naar een afbeelding, en de editor van ZPLCraft toont een live voorvertoning van het etiket terwijl je ontwerpt, zodat je pas labelmateriaal gebruikt als de opmaak definitief is.

Welke printers zijn ZPL-compatibel?

Compatibiliteit hangt af van model en configuratie. Controleer de specificaties van de fabrikant op ondersteuning voor ZPL of ZPL II of een gedocumenteerde emulatiemodus, bevestig de doel-DPI en benodigde functies en test het exacte uitvoerpad. Alleen een USB-verbinding of TCP-poort 9100 bewijst niet dat een printer ZPL accepteert. Compatibiliteit en advies

Bronnen