ZPL (Zebra Programming Language), Zebra Technologies tarafından geliştirilen ve termal etiket yazıcılarını kontrol etmek için kullanılan bir komut dilidir. Dünya genelinde milyonlarca Zebra yazıcı kullanılmaktadır ve ZPL, bu yazıcıların en güçlü özelliklerinden yararlanmanın anahtarıdır. Kargo şirketlerinden üretim tesislerine, perakende mağazalardan sağlık kuruluşlarına kadar sayısız sektörde ZPL tabanlı etiket sistemleri çalışmaktadır.
Bu rehberde, ZPL'nin temel yapısını, en sık kullanılan komutları, barkod ve QR kod oluşturma yöntemlerini, pratik etiket örneklerini ve hata ayıklama ipuçlarını adım adım öğreneceksiniz. Ayrıca LabelInn'in görsel tasarımcısıyla ZPL kodunu otomatik oluşturma yöntemini de keşfedeceksiniz.
ZPL Nedir ve Neden Öğrenmeli?
ZPL, Zebra yazıcılara metin tabanlı komutlar göndererek etiket tasarımı ve yazdırma işlemini kontrol eden bir dildir. Bir bakıma HTML gibi düşünebilirsiniz — tarayıcıya web sayfasını nasıl çizeceğini söyleyen HTML gibi, ZPL de yazıcıya etiketi nasıl yazdıracağını söyler.
ZPL Öğrenmenin Avantajları
ZPL bilmek birçok avantaj sağlar. İlk olarak, otomasyon: ERP, WMS veya e-ticaret sisteminizden doğrudan ZPL kodu oluşturup yazıcıya gönderebilirsiniz — böylece etiket yazdırma tamamen otomatik hale gelir. İkinci olarak, performans: ZPL ile tasarlanan etiketler yazıcı tarafında render edilir, bu da bilgisayardaki grafik tabanlı yazdırmadan çok daha hızlıdır. Üçüncü olarak, hassas kontrol: her öğenin piksel düzeyinde konumunu, boyutunu ve biçimini kontrol edebilirsiniz.
ZPL vs CPCL vs EPL
Zebra'nın farklı yazıcı serileri farklı dilleri destekler. ZPL (ZPL II), masaüstü ve endüstriyel yazıcılar için standarttır. CPCL, mobil Zebra yazıcılar (ZQ serisi, QLn serisi) için geliştirilmiştir. EPL ise eski nesil yazıcılar için kullanılan, artık büyük ölçüde ZPL tarafından yerini bırakmış bir dildir. Modern Zebra yazıcıların çoğu hem ZPL hem CPCL'yi destekler.
ZPL yazmadan profesyonel etiket tasarlayın — görsel tasarımcıyla
LabelInn'i Ücretsiz İndir →Temel ZPL Yapısı
Her ZPL etiketi iki zorunlu komutla başlar ve biter. Bu temel yapıyı anlamak, tüm ZPL programlamanın temelidir.
Etiket Başlangıç ve Bitiş
^XA ; Etiket başlangıcı (Start Format)
... komutlar ...
^XZ ; Etiket bitişi (End Format)
^XA komutu yazıcıya yeni bir etiket başladığını, ^XZ komutu ise etiketin tamamlandığını ve yazdırılması gerektiğini bildirir. Bu iki komut arasına istediğiniz kadar öğe ekleyebilirsiniz.
Konum Belirleme: ^FO Komutu
^FO50,100 ; X=50, Y=100 piksel konumuna git
^FO (Field Origin) komutu, bir sonraki öğenin etiket üzerindeki konumunu belirler. İlk parametre X (yatay), ikinci parametre Y (dikey) koordinatıdır. Koordinat sistemi etiketin sol üst köşesinden başlar. Piksel cinsinden ölçülür — 203 DPI yazıcıda 1mm yaklaşık 8 pikseldir.
Veri Alanı: ^FD ve ^FS Komutları
^FO50,100
^A0N,40,40 ; Font ayarı
^FDMerhaba Dünya^FS ; Metin verisi ve alan sonu
^FD (Field Data) yazdırılacak metni tanımlar, ^FS (Field Separator) alanın sonunu işaretler. Her öğe ^FD ile başlar ve ^FS ile biter. Bu yapı ZPL'nin en temel kalıbıdır.
Tam Bir Minimal Etiket Örneği
^XA
^FO50,50
^A0N,30,30
^FDÜrün: Widget A^FS
^FO50,100
^A0N,25,25
^FDFiyat: 29,99 TL^FS
^XZ
Bu basit etiket, iki satır metin yazdırır: birincisi (50,50) konumunda ürün adı, ikincisi (50,100) konumunda fiyat bilgisi. Font boyutu ^A komutuyla ayarlanır.
Sürükle-bırak ile etiket tasarla, otomatik ZPL oluştur
LabelInn'i Ücretsiz İndir →Metin Biçimlendirme: ^A Komutu
ZPL'de metin biçimlendirme, ^A komutuyla yapılır. Bu komut font türünü, yönünü ve boyutunu kontrol eder.
^A Komutunun Yapısı
^A<font><yön>,<yükseklik>,<genişlik>
Örnekler:
^A0N,30,30 ; Font 0, Normal yön, 30x30 piksel
^A0R,40,40 ; Font 0, 90° sağa dönük
^A0I,50,50 ; Font 0, 180° ters
^A0B,35,35 ; Font 0, 270° sola dönük
Font numarası (0-9 veya A-Z) yazıcıda yüklü fontları belirtir. Font 0 varsayılan proportional fonttır. Yön parametresi: N (Normal), R (90° saat yönünde), I (180° ters), B (270°). Yükseklik ve genişlik piksel cinsindendir.
Yerleşik Fontlar
Zebra yazıcılarda yerleşik olarak bulunan fontlar sınırlıdır. En yaygın kullanılanlar:
- Font 0: Proportional font, genel kullanım için ideal
- Font A: 9x5 piksel, küçük metin için
- Font D: 18x10 piksel, orta boyut
- Font E: 28x15 piksel, başlıklar için
TrueType Font Kullanımı
^A@N,40,40,E:ARIAL.TTF
^FDTürkçe Karakterler: ÇĞİÖŞÜ^FS
Yazıcıya yüklenmiş TrueType fontlarını ^A@ komutuyla kullanabilirsiniz. Bu yöntem özellikle Türkçe karakterler (Ç, Ğ, İ, Ö, Ş, Ü) için önemlidir çünkü yerleşik fontlar bu karakterleri desteklemeyebilir.
Türkçe karakter desteğiyle etiket tasarımı — LabelInn ile
LabelInn'i Ücretsiz İndir →Barkod Oluşturma
ZPL'nin en güçlü özelliklerinden biri, doğrudan yazıcı üzerinde barkod oluşturma yeteneğidir. Yazıcı, barkodu kendi donanımıyla render ettiği için her zaman net ve taranabilir sonuç verir.
Code 128 Barkod: ^BC Komutu
^XA
^FO50,50
^BY2 ; Barkod çizgi genişliği (2 piksel)
^BCN,100,Y,N,N ; Code 128, yükseklik 100, altında metin var
^FD123456789^FS ; Barkod verisi
^XZ
^BC komutu Code 128 barkod oluşturur. Parametreler: yön (N=normal), yükseklik (piksel), yorumlama satırı (Y=göster, N=gizle), üst yorumlama ve kontrol karakteri. ^BY komutu barkod çizgi genişliğini ayarlar — 2 veya 3 piksel en yaygın değerlerdir.
QR Kod: ^BQ Komutu
^XA
^FO50,50
^BQN,2,6 ; QR Kod, model 2, büyütme 6
^FDQA,https://www.labelinn.com^FS
^XZ
^BQ komutu QR kod oluşturur. Parametreler: yön, model (1 veya 2), büyütme faktörü (1-10). Veri alanında QA, öneki otomatik hata düzeltme seviyesini belirtir. QR kodun boyutu, veri miktarı ve büyütme faktörüne göre otomatik olarak hesaplanır.
Diğer Barkod Formatları
; EAN-13
^FO50,50^BY2^BEN,80,Y,N^FD8691234567890^FS
; Code 39
^FO50,200^BY2^B3N,N,100,Y,N^FDABC-123^FS
; DataMatrix
^FO50,350^BXN,5,200^FDOrnek Veri 123^FS
ZPL, 30'dan fazla barkod formatını destekler: Code 39 (^B3), EAN-13 (^BE), UPC-A (^BU), Interleaved 2 of 5 (^B2), DataMatrix (^BX), PDF417 (^B7) ve daha fazlası. Her format için farklı bir komut kullanılır ancak genel yapı benzerdir.
30+ barkod formatını görsel olarak tasarlayın — ZPL bilmek gerekmez
LabelInn'i Ücretsiz İndir →Çizgi ve Kutu Çizme: ^GB Komutu
ZPL'de etiket üzerine çizgi, kutu (dikdörtgen) ve daire çizmek için geometrik komutlar kullanılır. Bu komutlarla etiketin yapısını oluşturabilir, bölümlere ayırabilir ve profesyonel bir görünüm verebilirsiniz.
^GB — Grafik Kutu
; Dolu kutu (siyah dikdörtgen)
^FO50,50^GB200,100,200^FS
; Çerçeve kutu (sadece kenarlık)
^FO50,50^GB200,100,3^FS
; Yatay çizgi
^FO50,50^GB400,3,3^FS
; Dikey çizgi
^FO50,50^GB3,200,3^FS
^GB (Graphic Box) komutunun parametreleri: genişlik, yükseklik ve çizgi kalınlığı (piksel). Çizgi kalınlığı kutunun genişliğine eşit olursa dolu kuttu olur, küçükse çerçeve olur. Yatay çizgi için yüksekliği 3 piksel yapın, dikey çizgi için genişliği 3 piksel yapın.
^GC — Grafik Daire
^FO50,50^GC100,3^FS ; Çap 100px, çizgi kalınlığı 3px
Pratik Örnek: Çerçeveli Etiket
^XA
; Dış çerçeve
^FO10,10^GB780,480,3^FS
; Üst başlık alanı (dolu arka plan)
^FO10,10^GB780,60,60^FS
^FO20,20^A0N,40,40^FR^FDŞİRKET ADI^FS
; Yatay ayırıcı çizgi
^FO10,150^GB780,2,2^FS
; İçerik alanı
^FO20,170^A0N,30,30^FDÜrün: Widget Pro^FS
^FO20,210^A0N,25,25^FDSKU: WDG-PRO-001^FS
; Barkod alanı
^FO20,280^BY2^BCN,80,Y,N,N^FDWDG-PRO-001^FS
^XZ
Bu örnek, çerçeveli ve bölümlenmiş profesyonel bir ürün etiketi gösterir. ^FR komutu ters baskı (reverse print) sağlar — dolu siyah arka plan üzerine beyaz metin.
Drag-and-drop tasarımcıyla aynı etiketi saniyeler içinde oluşturun
LabelInn'i Ücretsiz İndir →Pratik ZPL Etiket Örnekleri
Aşağıda farklı sektörler için hazır ZPL etiket örnekleri bulacaksınız. Bu kodları doğrudan Zebra yazıcınıza gönderebilir veya kendi ihtiyaçlarınıza göre düzenleyebilirsiniz.
Kargo Etiketi (100×150mm)
^XA
^CI28 ; UTF-8 karakter seti
^PW812 ; Etiket genişliği (piksel)
^LL1218 ; Etiket uzunluğu (piksel)
; Gönderici bilgileri
^FO20,20^A0N,24,24^FDGönderen: ABC Ticaret Ltd.^FS
^FO20,50^A0N,20,20^FDAdres: Atatürk Cad. No:42, İstanbul^FS
^FO20,75^A0N,20,20^FDTel: 0212 555 1234^FS
; Ayırıcı çizgi
^FO10,110^GB792,3,3^FS
; Alıcı bilgileri (büyük font)
^FO20,130^A0N,35,35^FDAlıcı: Mehmet Yılmaz^FS
^FO20,175^A0N,28,28^FDCumhuriyet Mah. 123. Sok.^FS
^FO20,210^A0N,28,28^FDNo: 7/A Daire: 3^FS
^FO20,250^A0N,35,35^FD06100 Ankara^FS
; Büyük kargo barkodu
^FO100,320^BY3^BCN,150,Y,N,N^FDTRK2026030200142^FS
; QR Kod (takip linki)
^FO600,700^BQN,2,5^FDQA,https://takip.abc.com/TRK2026030200142^FS
; Tarih ve ağırlık
^FO20,550^A0N,22,22^FDTarih: 02.03.2026^FS
^FO400,550^A0N,22,22^FDAğırlık: 2,4 kg^FS
^XZ
Ürün Etiketi (50×25mm)
^XA
^CI28
^PW400^LL200
^FO10,10^A0N,28,28^FDWidget Pro X5^FS
^FO10,45^A0N,20,20^FD149,99 TL^FS
^FO10,80^BY2^BCN,60,N,N,N^FD8691234567890^FS
^FO10,150^A0N,16,16^FD8691234567890^FS
^XZ
Varlık Takip Etiketi (40×20mm)
^XA
^CI28
^PW320^LL160
^FO5,5^GB310,150,2^FS
^FO10,10^A0N,18,18^FDABC Ticaret - Varlık Etiketi^FS
^FO10,35^A0N,24,24^FDIT-LPT-0042^FS
^FO200,55^BQN,2,3^FDQA,IT-LPT-0042^FS
^FO10,65^A0N,16,16^FDBilgi İşlem Departmanı^FS
^FO10,90^A0N,14,14^FDTarih: 02.03.2026^FS
^XZ
ZPL kodlama yerine görsel tasarımcıyı kullanın — aynı sonuç, sıfır kod
LabelInn'i Ücretsiz İndir →ZPL Hata Ayıklama İpuçları
ZPL ile çalışırken karşılaşabileceğiniz yaygın sorunlar ve çözümleri:
Etiket Boş Çıkıyor
En yaygın sorun: ^XA veya ^XZ komutlarının eksik olması. Her etiket mutlaka ^XA ile başlamalı ve ^XZ ile bitmelidir. Ayrıca ^FO koordinatlarının etiket boyutunu aşmadığını kontrol edin — etiketin dışına düşen öğeler yazdırılmaz.
Türkçe Karakterler Görünmüyor
^CI28 komutunu etiketin başına (^XA'dan hemen sonra) ekleyin. Bu komut UTF-8 karakter setini aktifleştirir. Ayrıca kullandığınız fontun Türkçe karakterleri desteklediğinden emin olun — yerleşik fontlarda sorun olabilir, TrueType font kullanmanız gerekebilir.
Barkod Taranmıyor
^BY komutuyla çizgi genişliğini kontrol edin — çok ince çizgiler (1 piksel) düşük çözünürlüklü yazıcılarda taranmayabilir. Minimum ^BY2 kullanın. Quiet zone (sessiz bölge) yani barkodun etrafındaki boş alanın yeterli olduğundan emin olun — en az 10 piksel boşluk bırakın.
Öğeler Üst Üste Biniyor
Her öğenin ^FO koordinatını ve boyutunu dikkatlice hesaplayın. Metin yüksekliği ^A komutundaki yükseklik parametresine, barkod yüksekliği ^BC komutundaki yükseklik parametresine bağlıdır. Bir öğeden sonra bir sonrakinin Y koordinatı, önceki öğenin Y + yükseklik + boşluk formülüyle hesaplanmalıdır.
Labelary Online Test Aracı
labelary.com/viewer.html adresinde ZPL kodunuzu fiziksel yazıcı olmadan test edebilirsiniz. ZPL kodunu yapıştırın, etiket boyutunu ve DPI'ü ayarlayın — anında önizleme alırsınız. Hata ayıklama ve prototipleme için vazgeçilmez bir araçtır.
LabelInn'in yerleşik önizleme özelliğiyle hatasız etiketler yazdırın
LabelInn'i Ücretsiz İndir →Görsel Tasarımcı vs ZPL Kodlama
ZPL bilgisi güçlü bir yetenektir, ancak her etiket için ZPL kodu yazmak pratik değildir. İşte bu noktada görsel etiket tasarımcıları devreye girer.
ZPL Kodlamanın Artıları
- Tam kontrol — piksel düzeyinde hassasiyet
- Otomasyon uygunluğu — ERP/WMS entegrasyonu
- Tekrarlanabilirlik — şablon olarak paylaşma
- Hafif — grafik dosyası göndermeye gerek yok
Görsel Tasarımcının Artıları
- Hız — dakikalar içinde profesyonel etiket
- Öğrenme eğrisi yok — sürükle-bırak arayüz
- Anında önizleme — hata riski minimum
- Ekip erişilebilirliği — teknik bilgi gerektirmez
LabelInn'in Görsel-ZPL Dönüştürücüsü
LabelInn, iki dünyanın en iyisini sunar. Sürükle-bırak tasarımcısıyla etiketinizi görsel olarak oluşturun — uygulama arka planda otomatik olarak optimize edilmiş ZPL kodu üretir. Bu ZPL kodunu dışa aktarabilir, ERP sisteminize entegre edebilir veya doğrudan yazıcıya gönderebilirsiniz. Böylece görsel tasarımın kolaylığıyla ZPL'nin gücünü birleştirirsiniz.
Ayrıca mevcut ZPL kodunuzu LabelInn'e yapıştırarak görsel düzenleyicide açabilirsiniz. Kod üzerinde değişiklik yapmadan, sürükle-bırak arayüzünde düzenleyip tekrar ZPL olarak dışa aktarın. Bu özellik, başka sistemlerden gelen ZPL şablonlarını hızla güncellemenizi sağlar.
Sık Sorulan Sorular
ZPL öğrenmek zor mu?
Temel ZPL komutları (^XA, ^XZ, ^FO, ^FD, ^FS, ^A, ^BC, ^BQ) birkaç saatte öğrenilebilir. Karmaşık düzenler ve otomasyon entegrasyonlar için daha fazla pratik gerekir. LabelInn ile ZPL bilmeden de aynı sonuçları elde edebilirsiniz.
Tüm Zebra yazıcılar ZPL destekler mi?
Modern Zebra masaüstü (ZD serisi) ve endüstriyel (ZT serisi) yazıcıların tamamı ZPL II'yi destekler. Bazı eski modeller ve mobil yazıcılar yalnızca CPCL destekleyebilir. Yazıcınızın spesifikasyonlarını kontrol edin.
ZPL ile resim yazdırabilir miyim?
Evet, ^GF (Graphic Field) komutuyla resim yazdırabilirsiniz. Ancak resmi hex veya Z64 formatına dönüştürmeniz gerekir. LabelInn, bu dönüşümü otomatik yapar — logo veya resim sürükleyin, ZPL'ye çevrilsin.
Sonuç: ZPL Yolculuğunuza Bugün Başlayın
ZPL programlama, Zebra yazıcılarınızın tam potansiyelini ortaya çıkarmanın anahtarıdır. Bu rehberdeki temel komutlarla (^XA/^XZ, ^FO, ^A, ^FD/^FS, ^BC, ^BQ, ^GB) basit etiketlerden karmaşık düzenlere kadar her şeyi oluşturabilirsiniz. Ancak ZPL kodlamaya vakit ayıramıyorsanız veya teknik bilgi gerektirmeyen bir çözüm arıyorsanız, LabelInn'in görsel tasarımcısı aynı profesyonel sonuçları sürükle-bırak ile sunar.
LabelInn'i ücretsiz indirin: görsel olarak tasarlayın, otomatik ZPL oluşturun ve 50'den fazla yazıcı markasıyla sürücüsüz yazdırın. ZPL öğrenmek isteyenler için de mükemmel bir yardımcıdır — oluşturulan ZPL kodunu inceleyerek pratik yapabilirsiniz.
Görsel Etiket Tasarımcısı — ZPL Desteğiyle
LabelInn ile görsel tasarımın kolaylığı ve ZPL'nin gücünü birleştirin. Sonsuza kadar ücretsiz plan mevcut.
LabelInn'i Ücretsiz İndir →