Co to jest ZPL? Zebra Programming Language

Zaktualizowano 23 czerwca 2026

ZPL (język programowania Zebra) to język poleceń używany przez drukarki termiczne Zebra i kompatybilne do opisywania etykiet. Zamiast otrzymywać gotowy obraz jak drukarka biurowa, drukarka ZPL otrzymuje krótki blok zwykłego tekstu — polecenia mówiące „umieść ten tekst tutaj, narysuj ten kod kreskowy tam, wydrukuj jedną kopię" — i samodzielnie renderuje etykietę z pełną rozdzielczością głowicy drukującej w ciągu milisekund.

To właśnie ten projekt sprawił, że ZPL dominuje w etykietowaniu wysyłkowym, magazynowym, detalicznym i medycznym od lat osiemdziesiątych: dane przesyłane do drukarki są minimalne, może je generować wszystko, co potrafi tworzyć tekst (system ERP, skrypt, przeglądarka), a ciężką pracę wykonuje hardware drukarki. Praktycznie każda drukarka Zebra wyprodukowana od początku lat dziewięćdziesiątych obsługuje ZPL II, aktualnie stosowaną wersję, a podobnie wiele drukarek innych marek reklamujących emulację „kompatybilną z ZPL".

Jak wygląda etykieta ZPL

Dokument ZPL to ciąg poleceń, z których każde zaczyna się daszkiem (^). Każda etykieta jest otoczona między ^XA (start formatu) a ^XZ (koniec formatu). Oto kompletna, działająca etykieta:

^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

Czytając wiersz po wierszu:

  • ^XA^XZ — otwiera i zamyka format etykiety. Wszystko pomiędzy opisuje jedną etykietę.
  • ^CF0,40 — ustawia domyślną czcionkę na skalowaną czcionkę 0 o wysokości 40 kropek.
  • ^FO50,50Field Origin: pozycjonuje następne pole 50 kropek od lewej i 50 kropek od góry.
  • ^FDHELLO WORLD^FSField Data a następnie Field Separator: rzeczywista treść pola.
  • ^GB700,4,4 — rysuje Graphic Box o szerokości 700 kropek i wysokości 4 kropek — tutaj użyte jako pozioma linia podziału.
  • ^BY3,2,100 a następnie ^BCN,100,Y,N,N — ustawia domyślne parametry kodu kreskowego (szerokość modułu, stosunek, wysokość), a potem renderuje kod kreskowy Code 128 z danymi 12345678 i czytelną dla człowieka linią poniżej.

Kropki, nie piksele: zrozumienie DPI

Każda współrzędna i rozmiar w ZPL są mierzone w kropkach drukarki, a fizyczny rozmiar kropki zależy od rozdzielczości głowicy drukującej. Typowe rozdzielczości to 203 dpi (8 kropek/mm), 300 dpi (12 kropek/mm) i 600 dpi (24 kropki/mm). Na drukarce 203 dpi etykieta wysyłkowa 4 × 6 cali to 812 × 1218 kropek; na drukarce 300 dpi ta sama etykieta to 1200 × 1800 kropek. ZPL napisany dla jednej rozdzielczości drukuje mniejszy lub większy na innej — to najczęstsza przyczyna problemów „moja etykieta wygląda źle na nowej drukarce". Rozmiary muszą być skalowane do docelowego DPI.

ZPL vs. EPL vs. druk przez sterownik

Możesz też natknąć się na EPL (Eltron Programming Language) — starszy, prostszy język używany przez niektóre starsze drukarki biurkowe. Nowoczesne drukarki Zebra obsługują oba, ale nowe projekty powinny celować w ZPL. Alternatywą dla obu jest druk przez sterownik, gdzie sterownik Windows lub CUPS konwertuje wyrenderowaną stronę na polecenia drukarki. Sterowniki są wygodne do drukowania z Worda lub przeglądarki PDF, ale surowy ZPL zapewnia precyzyjne rozmieszczenie, ostrzejsze kody kreskowe, znacznie mniejszy rozmiar danych i możliwość drukowania z systemów, w których instalacja sterowników jest niepraktyczna — dlatego oprogramowanie do etykiet ostatecznie mówi ZPL.

Jak pisać — lub generować — ZPL

Dla jednorazowej etykiety pisanie ZPL ręcznie z otwartą dokumentacją poleceń jest jak najbardziej wykonalne: język jest mały, a kilka poleceń (^FO, ^FD, ^A, ^BC, ^GB) pokrywa większość rzeczywistych etykiet. Problem zaczyna się, gdy musisz iterować nad układem — każde przesunięcie oznacza edycję współrzędnych w kropkach, ponowne wysłanie pliku i marnowanie papieru etykietowego.

To właśnie ten problem rozwiązują wizualne projektanty. ZPLCraft daje Ci kanwę w rzeczywistym rozmiarze, na której przeciągasz tekst, kody kreskowe, linie i ramki na miejsce, a pasujący ZPL jest generowany automatycznie — poprawnie skalowany do DPI Twojej drukarki, z kodami kreskowymi, które się skanują. Możesz wyeksportować kod do dowolnego systemu, który już wysyła ZPL, lub drukować prosto z przeglądarki przez USB bez instalowania czegokolwiek.

Najczęściej zadawane pytania podstawowe

Czy ZPL jest darmowy?

Tak. ZPL to de facto otwarty standard: Zebra publikuje pełny przewodnik programowania ZPL II i nie ma nic do licencjonowania. Może go tworzyć dowolny edytor tekstu.

Jakiego rozszerzenia pliku używa ZPL?

Nie ma wymaganego rozszerzenia — ZPL to zwykły tekst. Spotkasz .zpl, .txt i .prn w praktyce; drukarki nie zwracają na to uwagi, po prostu przetwarzają strumień bajtów.

Czy mogę podejrzeć ZPL bez drukarki?

Tak — usługi renderujące, takie jak Labelary, konwertują ZPL na obraz, a edytor ZPLCraft pokazuje podgląd etykiety na żywo podczas projektowania, więc papier etykietowy zużywasz dopiero gdy układ jest gotowy.