Öncelikle biraz ZPL programa dili kullamından bahsedeceğim.
Özel karakterler ile oluşturulan text 'in DocumentDataType "RAW" formatı ile gönderilmesi ile ZPL destekli yazıcının bu formata uygun çıktı vermesi şeklinde gerçekleştiriliyor.
ZPL ^ karakteri ile belli harflendirmeler kullanılarak oluşturuluyor.
Dökümana ^XA kodu ile başlayıp ^XZ kodu ile bitiriliyor.
^CI – Encoding ayarlanıyor, (Türkçe karakter kullanılabiilmesi için hex kodu yazılması gerekiyor, bu sebeple encoding 28 kullanılmalı, ^CI28 şeklinde)
^CIa,s1,d1,s2,d2,...
^FT – Field Typeset ile karakterlerin pozisyon ayarlanıyor.
^FTx,y,z
^A@ İstenilen fontu çağırmak için kullanılır (bu arada Arial gibi özel fontlar istenildiğinde yazıcının uygulaması ile yazıcı EPROM'una font yazılıp aşağıdaki örnekteki gibi kullanılabilir,
Buradan öğrenebilirsiniz )
^A@o,h,w,d:o.x
o: yön belirteci, h = karakter yüsekliği, w = karakter genişliği
d = drive location of font, o = font name, x = extension
(burada d yazıcı epromundaki font path'i, benim gibi windows path vermeyi denemeyin :) )
^FH – Field Hexadecimal Indicator ile hexadecimal kod yazmaya olanak tanınıyor.
^FHa a burada default'da kullanılan ^ ve ~ karakterleri hariç hex tanımlamada ayırıcı rolü oynayacak karakterdir. Default değer _ 'dur, örneğin hex codu 7e olan değer ^FH tag'i içinde _7e olarak tanımlanır.
^FD – Field Data ve ^FS – Field Separator basılacak string bu iki tag arasına yazılır.
Örnek kod aşağıda görünmektedir.
^XAKodun Çıktısı
^CI28
^FT100,50^A@N,17,18,E:ARI000.FNT^FH^FD _C3_9C_C5_9E_C3_96_C4_B0_C4_9E_C3_87 Hello^FS
^FT100,71^A@N,17,18,E:ARI000.FNT^FH^FD _C3_BC_C5_9F_C3_B6_C4_B1_C4_9F_C3_A7 Wold!^FS
^XZ
ÜŞÖİĞÇ Hello
üşöığç World!
burada arial fontu yukarıdaki linkteki metod ile ARI000.FNT adında yazıcı içerisine download edilmiştir.
Türkçe karakterlerin doğru şekilde çıkması için encoding doğru şekilde yapılandırılmalıdır. Doğru encoding verilmediği taktirde hex kodları çözülemeyecektir. Ayrıca Hex kodlarının ^FH tag'i ile kullanımına dikkat edilmelidir.