Giriş
Ürünler
ZPL GörüntüleyiciBarkod OluşturucuGörsel → ZPLZPL hile sayfasıEtiket TasarımcısıŞablon Galerisi
Geliştiriciler
API Hızlı BaşlangıçAPI ReferansıMCP SunucusuToplu ÜretimWebhook'larSDK'lar ve ÖrneklerLimitlerDirectPrint agent YeniGitHub ActionVS Code eklentisiOn-Premise
Çözümler
Lojistik ve KargoE-TicaretERP & WMSÜretimPerakendeSağlık ve LaboratuvarTüm çözümler
Araçlar
ZPL Teşhis MerkeziZPL Hata AyıklayıcıBoyut ve DPI AnaliziDPI DönüştürücüBarkod sığdırma hesaplayıcısıSevkiyat Etiketi AnaliziFont DenetimiYön DenetimiKalibrasyon AsistanıYazıcı Uyumluluk KontrolüBarkod Okunabilirlik KontrolüYazıcı Dili TespitiTermal Yazıcı Test PaketiZPL AraçlarıEPL AraçlarıTSPL AraçlarıCPCL AraçlarıYazıcı Dili DönüştürücüTüm AraçlarRehberFiyatlandırma
Dil
EnglishTürkçeDeutsch
Ana Sayfa›Rehber›ZPL'i Ağ Yazıcısına Doğrudan Nasıl Gönderirsiniz

ZPL'i Ağ Yazıcısına Doğrudan Nasıl Gönderirsiniz

Yayın tarihi:

Bir ZPL dosyasının basılması için sürücü gerekmez. Ağa bağlı termal yazıcıların çoğu TCP 9100 portunu dinler ("raw" ya da "JetDirect" baskı denir) ve oraya gelen her şeyi yazıcı komutu olarak işler. Etiket göndermek bu yüzden bir sokete bayt taşımaktan ibarettir — her işletim sisteminden, hiçbir yazılım kurmadan yapılabilir.

Göndermeden önce: etikete bir bakın

9100 portunun geri alması yoktur. İş yazıcıya ulaştığı anda malzeme ilerlemeye başlar; her hata bir etiket ve bir parça ribon demektir. ZPL'i önce online görüntüleyiciye yapıştırın: render edilmiş etiketi ve yapısal sorunları (eksik ^FS, etiket dışına taşan alanlar) yazıcıdan önce siz görürsünüz.

Linux ve macOS

Klasik araç nc (netcat). IP'yi kendi yazıcınızın adresiyle değiştirin:

nc 192.168.1.50 9100 < etiket.zpl

CUPS olan sistemlerde ham kuyrukla lp de kullanılabilir; ama tek seferlik işler için soket daha basittir — yapılandırılacak bir şey yoktur.

Windows

PowerShell aynı soketi ek araç olmadan açar:

$c = New-Object Net.Sockets.TcpClient('192.168.1.50', 9100)
$b = [IO.File]::ReadAllBytes('etiket.zpl')
$c.GetStream().Write($b, 0, $b.Length); $c.Close()

Eski usül (yazıcıyı paylaşıp copy /b) hâlâ çalışır, ama soket yaklaşımı ne paylaşım ne sürücü ister.

Koddan

TCP soketi açabilen her dil basabilir. Python:

import socket

with socket.create_connection(("192.168.1.50", 9100), timeout=5) as s:
    with open("etiket.zpl", "rb") as f:
        s.sendall(f.read())

Basit senaryoda 9100'ün yanıt protokolü yoktur: soketin hatasız kapanması yazıcının baytları KABUL ETTİĞİ anlamına gelir — etiketin doğru BASILDIĞI anlamına gelmez. Yoğunluk uyuşmazlığı ve yerleşim hataları burada görünmez; yukarıdaki önizleme adımı bu yüzden önemli.

Hiçbir şey basılmıyorsa

Sırayla ilerleyin — gerçek vakaların çoğunu bu liste kapsar:

1. Yazıcıya hiç ulaşabiliyor musunuz? IP'ye ping atın; olmuyorsa sorun ağda, ZPL'de değil.
2. 9100 portu açık mı? Bazı yazıcılar ham baskı kapalı ya da farklı portla gelir — yazıcının ağ yapılandırma sayfasına bakın.
3. Yazıcı duraklatılmış ya da hatada mı? Yanıp sönen durum ışığı, işin yazıcının içinde beklediğini gösterir, kaybolduğunu değil.
4. ZPL gerçekten bir etiket mi? Her şey ^XA ile ^XZ arasında olmalı; bu çerçevesi olmayan dosya sessizce yok sayılır — "hiçbir şey olmuyor"un en sık sebebi.
5. Basılıyor ama yanlış mı? O ayrı bir sorun sınıfı: ZPL etiketi neden yanlış basılır yazısına bakın.

Labelixa DirectPrint

Etiketleriniz Labelixa'da üretiliyor ya da saklanıyorsa, DirectPrint agent'ı yerel yardımcı kalıbının hazır hâlidir: yazıcının ağındaki bir bilgisayarda çalışan küçük bir program baskı işlerini API'den alır ve yazıcıya ağ üzerinden ya da USB yazıcının yazdırma kuyruğu üzerinden verir. Gelen port açmaz. İndirme ve kurulum: /tr/download

USB Zebra yazıcıya buluttan ZPL baskısı

Sık sorulan sorular

Zebra yazıcılar ham baskı için hangi portu kullanır?

Yaygın durumda TCP 9100 — oraya gelen her şey yazıcı komutu olarak işlenir. Bazı yazıcılar ham baskı kapalı ya da farklı portla gelir; yazıcının ağ yapılandırma sayfası esastır.

ZPL göndermek için yazıcı sürücüsü gerekir mi?

Hayır. Ham baskı, sokete bayt taşımaktır: Linux/macOS'ta nc, Windows'ta kısa bir PowerShell parçası ya da koddan herhangi bir dilin TCP soketi.

Soket hatasız gönderdi — neden hiçbir şey basılmadı?

9100 geri bildirim vermez: kabul edilen iş, basılmış etiket demek değildir. Yazıcının duraklatma/hata durumuna bakın ve ZPL'in ^XA ile ^XZ arasında olduğundan emin olun — çerçevesiz dosya sessizce yok sayılır.

İlgili yazılar

ZPL'i Yazıcı Sürücüsü Olmadan Basmak

ZPL'in neden sürücü istemediği, ham göndermenin üç yolu — doğrudan soket, ham CUPS kuyruğu, Windows Generic/Text Only — ve sürücünün gerçekten işe yaradığı an.

Baskı soluk, bulaşıyor ya da siliniyor — ribon mu, etiket mi, ayar mı?

Soluk, bulaşan ya da delik delik termal transfer baskı çoğu zaman ribon tipi, etiket malzemesi ve hızın uyuşmamasıdır. Zebra kılavuzlarına göre kontrol sırası.

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.

Etiketin beyaz alanları baştan aşağı nokta nokta

Beyaz olması gereken yerdeki benekler ya dosyadan ya baskı kafasından gelir: ZPL'deki taranmış görsel ya da koyuluk, kir ve aşınma. Tek önizleme ikisini ayırır.

Kendi ZPL kodunuzu deneyin →