Yayın tarihi:
Ham ZPL baskısı anlatan yazıların çoğu ağ yazıcısını varsayar: 9100 portuna bir soket aç, etiketi yaz. USB kablosuyla bağlı bir masaüstü yazıcının böyle bir portu yoktur. Ona yalnız takılı olduğu bilgisayar üzerinden ulaşılır ve bu, bir bulut uygulamasının etiketi yazıcıya nasıl ulaştıracağını değiştirir.
USB yazıcı işletim sisteminde bir yazdırma kuyruğu olarak görünür — Windows'ta yazdırma biriktiricisi, macOS ve Linux'ta CUPS. Ağdaki hiçbir şey ona doğrudan erişemez; buluttaki bir sunucu ona ağ yazıcısına ulaştığı gibi ulaşamaz. O bilgisayarda bir şeyin etiketi alıp kuyruğa vermesi gerekir.
Yazıcı sürücüsü normalde bir sayfa çizer ve yazıcıya kendi komutlarını
gönderir. ZPL için bu yanlıştır: etiket dili yazıcıya yazıldığı gibi
ulaşmalıdır. macOS ve Linux'ta iş lp -d KUYRUK -o raw ile
gönderilir; Windows'ta RAW veri tipi kullanılır. macOS durumunu USB'li bir
Zebra GK420d ile ölçtük: "Zebra ZPL Label Printer" sürücüsüyle kurulan kuyruk
ham ZPL'i değiştirmeden geçirdi ve basılan etiket ekrandaki önizlemeyle
aynıydı. Sürücüsüz ham kuyruk da aynı şekilde çalışır.
Labelixa DirectPrint agent'ı, yazıcının takılı olduğu bilgisayarda çalışan küçük bir programdır. Baskı işlerini Labelixa API'sinden dışa giden bir bağlantıyla alır — gelen port açılmaz — ve her birini kuyruğa ham veri olarak verir. Kurulum:
labelixa-agent pair KOD.adaptor: "os_driver" ile kaydedin
(POST /v1/devices).labelixa-agent discover
-queues.labelixa-agent map-printer -device
CIHAZ_ID -queue "KUYRUK_ADI".labelixa-agent
install.Tam başvuru API belgesinde.
USB kuyruğunda bir işin bildirebileceği en ileri aşama
submitted_to_os'tur: işletim sistemi işi kabul etti. Kuyruk
yazıcı durumunu bildirmez; kapalı ya da etiketi bitmiş bir yazıcı iş
kaydında değil, işletim sisteminin kuyruğunda görünür. Bunu ölçtük: yazıcı
kapalıyken gönderilen iş teslim edildi olarak bildirildi, macOS kuyruğunda
bekledi ve yazıcı açılınca basıldı — agent işi yeniden göndermedi, çift baskı
olmadı. Üç kopyalı iş üç etiket çıkardı.
Yukarıdakilerin hepsi macOS'ta (Apple Silicon) USB'li tek bir Zebra GK420d ile ölçüldü; yeniden başlatmadan sonra agent'ın kendiliğinden çalışması da dahil. Aynı komutlar Windows ve Linux'ta da var, ancak bu sistemlerde basılı çıktıyı henüz doğrulamadık; ilk etiketleri kontrol etmeden onlara güvenmeyin.
Termal yazıcıda geri alma yoktur. ZPL'i önce
ZPL görüntüleyicide ya da render API'si
ile çizin — etiket dışına taşan alanları, eksik ^XZ'yi ve
kodlanamayan barkod verisini daha hiçbir malzeme ilerlemeden yakalar.
Etiketin yanlış yazıcıdan çıkması şanssızlık değil, bir kimlik sorunudur: kuyruk adları, DHCP kiraları ve paylaşılan sürücüler. Teşhis ve önleme.
macOS ve Linux'ta Ham CUPS Kuyruğuyla ZPL Basmaklpadmin ile ham (raw) CUPS kuyruğu kurma, lp ile ZPL gönderme ve klasik tuzak: süzgeçli kuyruğun ZPL kodunuzu düz metin olarak basması.
Yazıcı kimliği: kuyruk adları ve IP'ler sizi neden yanıltırBaskı yığınının her katmanı yazıcıyı değişebilen bir şeyle tanır: kuyruk adı, port eşlemesi, DHCP kirası. İşlerin neden yolunu şaşırdığının anatomisi.
Tarayıcıdan ZPL baskısıTarayıcı 9100 portuna soket açamaz. Web uygulamasından etiketi yazıcıya ulaştıran üç gerçek desen ve her birinin bedeli.