Anmelden
Produkte
ZPL-ViewerBarcode-GeneratorBild → ZPLZPL-SpickzettelEtiketten-DesignerVorlagen-Galerie
Entwickler
API-SchnellstartAPI-ReferenzMCP-ServerMassenerzeugungWebhooksSDKs & BeispieleLimitsDirectPrint-Agent NeuGitHub ActionVS-Code-ErweiterungOn-Premise
Lösungen
Logistik und VersandE-CommerceERP & WMSProduktionEinzelhandelGesundheitswesen und LaborAlle Lösungen
Tools
ZPL-DiagnosezentrumZPL-DebuggerGrößen- und DPI-AnalyseDPI-KonverterBarcode-PlatzrechnerVersandetiketten-AnalyseSchriftprüfungAusrichtungs-DebuggerKalibrierungsassistentDruckerkompatibilitätsprüfungBarcode-LesbarkeitsprüfungDruckersprachen-ErkennungThermodrucker-TestpaketZPL-ToolsEPL-ToolsTSPL-ToolsCPCL-ToolsDruckersprachen-KonverterAlle WerkzeugeRatgeberPreise
Sprache
EnglishTürkçeDeutsch
Startseite›Ratgeber›Etikett nach einem CUPS-Update zu groß, abgeschnitten oder leer

Etikett nach einem CUPS-Update zu groß, abgeschnitten oder leer

Veröffentlicht:

Ein Etikettendrucker unter Linux, der monatelang funktioniert hat, druckt plötzlich vergrößerten und abgeschnittenen Inhalt, schiebt leere Etiketten aus oder macht aus dem Barcode einen schwarzen Block — und geändert hat sich nur ein Systemupdate. Im Oktober 2026 landeten mehrere solcher Meldungen im Issue-Tracker von OpenPrinting. Gemeinsam ist ihnen: Das Etikett wurde nicht als Druckersprache gesendet. Es lief durch eine Treiber-Queue, die ein PDF für den Drucker in ein Bild umwandelt, und eine Änderung irgendwo in dieser Umwandlung hat das Etikett verändert.

Die Symptome, wie die Meldungen sie beschreiben

Wir haben das nicht an einem Drucker nachgestellt. Die Liste gibt wieder, was in den Issues steht, nicht mehr; Links unter Quellen.

Warum ein Systemupdate ein Etikett verändern kann

Drucken Sie ein Etikett aus einem Layoutprogramm oder dem Browser, übergibt die Anwendung CUPS ein Dokument, meist ein PDF. Eine Treiber-Queue führt dann eine Filterkette aus: Seitengröße und Skalierung, Rasterung und zuletzt die Umsetzung der Bitmap in die Befehle des Druckers. Jeder Schritt kann Größe, Position oder Pixel verändern, und jeder Schritt ist eine Systembibliothek — libcupsfilters, Ghostscript, Poppler, pdfio —, die mit Ihrer Distribution aktualisiert wird. Ihre Etikettdatei hat sich nicht geändert, die Umwandlung schon. Ein Raster-Treiber muss außerdem die echte Auflösung des Druckkopfs kennen: Bei 300 dpi für einen 203-dpi-Drucker wird alles um etwa 1,48 skaliert.

Kurzfristig: Paket festhalten oder zurückrollen

Müssen Sie beim Treiber-Workflow bleiben, zeigen die Meldungen, was den Meldern half: zurück zur vorherigen libcupsfilters-Version oder auf einen Build mit der Korrektur (#300). Der Paketmanager Ihrer Distribution zeigt, welche Bibliotheken sich im fraglichen Update geändert haben. Das ist eine Notlösung: Das nächste Update kann dieselbe Kette wieder verschieben.

Dauerhafte Lösung: Druckersprache an eine Raw-Queue senden

Kann Ihr System das Etikett als ZPL oder TSPL erzeugen — Versandplattformen, WMS und ERP-Systeme können das meist, eine Vorlage ebenso —, umgehen Sie die Umwandlungskette. Eine Raw-Queue reicht die Bytes unverändert an den Drucker: keine Skalierung, keine Rasterung, nichts, was ein Bibliotheksupdate verändern könnte.

sudo lpadmin -p etikett-raw -E -v socket://192.168.1.50:9100 -m raw
lp -d etikett-raw etikett.zpl

Das CUPS-Handbuch zu lpadmin sagt, das Modell raw „entfernt eine vorhandene PPD-Datei". Dasselbe Handbuch sagt auch, dass andere Modelle als everywhere veraltet sind und Druckertreiber in einer künftigen CUPS-Version nicht mehr unterstützt werden — deshalb warnen neuere CUPS-Versionen beim Anlegen einer Raw-Queue. Heute funktioniert sie noch. USB-Geräte-URIs und macOS-Details stehen in ZPL unter macOS und Linux drucken.

Gelegentlich wird lp -o raw empfohlen, um eine Datei durch eine bestehende Treiber-Queue zu schicken. Das aktuelle lp-Handbuch dokumentiert diese Option nicht, deshalb bauen wir hier nicht darauf; eine eigene Raw-Queue ist der berechenbare Weg.

Wohin CUPS steuert: LPrint

Die Richtung von CUPS ist treiberloser Druck mit IPP Everywhere. Etikettendrucker sprechen IPP selten selbst; Michael Sweets LPrint ist eine Druckeranwendung, die jeden Drucker als IPP-Everywhere-Druckdienst anbietet. Die Projektseite nennt alle EPL2- und ZPL-Drucker von Zebra, experimentelle TSPL/TSPL2-Unterstützung, DYMO, Brother und weitere und sagt, dass jeder Drucker „raw", Apple/PWG Raster und PNG direkt drucken kann. Eine Grenze: Der Maintainer merkt an, dass LPrint und IPP allgemein keine Medien unbestimmter Länge kennen — der Client muss eine Seitengröße angeben.

Etikett prüfen, bevor es aufs Papier geht

Fügen Sie das ZPL in den Online-Viewer ein, um Größe und Barcode vor dem Druck zu prüfen. Wurde das Etikett für einen 203-dpi-Drucker erstellt und Ihrer hat 300 dpi (oder umgekehrt), skalieren Sie die Koordinaten mit dem DPI-Konverter, statt einen Treiber eine Bitmap skalieren zu lassen; Hintergrund in ZPL-Punkte, mm und DPI. Druckt der Drucker Ihren ZPL-Quelltext als Text, ist es das umgekehrte Problem — siehe ZPL ohne Treiber drucken.

Quellen

Häufig gestellte Fragen

Warum druckt mein Etikett nach einem Linux-Update zu groß und abgeschnitten?

Das Etikett läuft vermutlich durch eine Treiber-Queue, die ein PDF in ein Bild umwandelt, und eine Bibliothek dieser Kette hat sich geändert. Eine Meldung vom Oktober 2026 zu einem Zebra ZD220 sah mit libcupsfilters-2.2.1-Snapshots etwa 2,5-fach zu großen Inhalt, mit 2.1.1 korrekt.

Wie verhindere ich, dass CUPS-Updates meine Etiketten verändern?

Senden Sie das Etikett als Druckersprache (ZPL oder TSPL) an eine Raw-Queue, etwa lpadmin -p etikett-raw -E -v socket://IP:9100 -m raw. Eine Raw-Queue reicht die Bytes unverändert durch; es gibt keine Skalierung oder Rasterung, die ein Update ändern könnte.

Sind Raw-Queues in CUPS veraltet?

Das lpadmin-Handbuch sagt, dass andere Modelle als everywhere veraltet sind und Druckertreiber in einer künftigen CUPS-Version nicht mehr unterstützt werden. Raw-Queues funktionieren heute noch; LPrint, das Etikettendrucker als IPP-Everywhere-Dienste anbietet, ist der Weg nach vorn.

Verwandte Ratgeber

TSPL vom Smartphone oder Browser auf einem Bluetooth-Etikettendrucker drucken

BLE oder Bluetooth Classic, was Web Bluetooth erreicht (Android-Chrome ja, iPhone-Safari nein), TSPL in Stücken schreiben und ein geprüftes Beispiel.

ZPL unter macOS und Linux über eine CUPS-Raw-Queue drucken

Raw-Warteschlange in CUPS mit lpadmin einrichten, ZPL mit lp senden — und die Falle vermeiden, dass eine filternde Queue den ZPL-Code als Text druckt.

ZPL aus der Cloud auf einem USB-Zebra-Drucker drucken

Ein USB-Etikettendrucker hat keinen Port 9100. Wie die Druckwarteschlange rohes ZPL transportiert und der Labelixa-Agent sie mit der Cloud-API verbindet.

ZPL aus dem Browser drucken

Ein Browser kann keinen Socket zu Port 9100 öffnen. Die drei Muster, die ZPL aus einer Web-App wirklich ausliefern, und ihr Preis.

Eigenen ZPL-Code testen →