Aus EasyLinux 04/2008

PostScript, CUPS und Co.

Unter Druck

Um unter Linux Drucker einzurichten, hilft es, ein paar Dinge über das Druckertreiber-System und seine Wurzeln zu wissen.

Wer unter Linux mit Druckern in Berührung kommt, stolpert häufig erst einmal über den Begriff PostScript. Was hat es damit auf sich? Einige Drucker verstehen PostScript nativ, andere nicht. Das ist wichtig, um das Drucksystem unter Linux zu begreifen. PostScript ist eine Seitenbeschreibungssprache für Drucker, die einst Adobe erfand, um alle Drucker über einen einheitlichen Befehlssatz anzusprechen. PostScript liegt mittlerweile in Version 3 vor, die in weiten Teilen zu den Versionen 1 und 2 kompatibel ist. Bei PostScript-Druckern handelt es sich überwiegend um Laserdrucker, die meist einer höheren Preisklasse angehören. Besitzen Sie so ein Gerät, läuft es garantiert unter Linux.

Bevor PostScript aufkam, brauchte jeder Drucker einen eigenen Treiber: Als Entwickler einer Grafikanwendung mussten Sie z. B. 20 Druckertreiber programmieren, damit die Software 20 Druckermodelle unterstützte.

PostScript löste dieses Problem (Abbildung 1): Nach der Einführung mussten die Anwendungsentwickler lediglich dafür sorgen, dass ihre Anwendung die zu druckenden Dokumente in ein korrektes und lesbares PostScript-Format umwandelte. Die Druckerhersteller brachten ihren Geräten im Gegenzug bei, PostScript zu verstehen. Mit der Print Control Language (PCL) von Hewlett-Packard, Graphical Device Interface (GDI) von Microsoft und Epsons ESC/P entwickelten andere Hersteller mehr oder weniger erfolgreiche Alternativen zu PostScript.

Abbildung 1: Bei PostScript handelt es sich um eine auch für Menschen lesbare Seitenbeschreibungssprache für Drucker.
Abbildung 1: Bei PostScript handelt es sich um eine auch für Menschen lesbare Seitenbeschreibungssprache für Drucker.

Vor dem Ausdrucken verwandeln die Drucker die angelieferten PostScript-Dateien in Rastergrafiken – dieses VErfahren heißt Raster Image Process (RIP). Hier steckt auch der große Unterschied: PostScript-Drucker wandeln aus eigener Kraft PostScript-Dateien in Rastergrafiken um. Dazu haben die günstigen Modelle einen entsprechenden Chip an Bord, die teuren bringen gleich ein eingebettetes Betriebssystem mit, das die Umwandlung über Software erledigt.

Drucken ohne PostScript

Beherrscht der heimische Drucker indes kein PostScript, landen die von den Anwendungen generierten PostScript-Dateien zunächst bei einem Konvertierungsprogramm. Das erstellt daraus ein Rastergrafikdokument, das die angeschlossenen Drucker verstehen. Unter Linux erledigt das GhostScript. Die Anwendung bringt dafür die so genannten Filter mit, die meist in einem aufwändigen Reverse Engineering ohne Kooperation der Druckerhersteller entstanden sind. Die Ergebnisse sehen nicht immer gut aus, aber einzelne Filter, wie die des Gutenprint-Projekts [1], übertreffen ihre Microsoft-Pendants mitunter qualitativ.

Warum PPD-Dateien?

Wenn die Anwendungen bereits PostScript-Dateien liefern und die Drucker diese nativ verstehen: Was tun dann die häufig erwähnten PPD-Dateien (PostScript Printer Description)? Der Druckertreiber wertet diese aus, um zu erfahren, was für besondere Funktionen ein spezieller Drucker beherrscht, so etwa Duplexdruck – das beidseitige Bedrucken eines Dokuments. Auch die grafischen Oberflächen zur Druckerverwaltung ziehen aus dieser Datei die Informationen darüber, welche Schalter, Knöpfe und Optionen sie den Anwendern präsentieren.

Auftritt CUPS

CUPS, das Common Unix Printing System, gilt als die relevante Software, wenn es um das Einrichten von Druckern unter Linux geht (Abbildung 2). Sie basierte ursprünglich auf GhostScript, brachte aber schon damals eigene, gut funktionierende Filter mit. Ab Version 1.1.15 setzte CUPS dann auf ESP GhostScript 7.05, einer auf GPL GhostScript basierenden, kommerziellen Variante. Im August 2007 vereinigten sich beide GhostScript-Projekte unter dem Namen GPL GhostScript 8.60, das unter Linux mittlerweile zahlreiche Nicht-PostScript-Drucker unterstützt.

Abbildung 2: CUPS lässt sich auch über ein Webinterface verwalten, indem Sie "http://localhost:631" in die Adressleiste des Browsers eingeben.
Abbildung 2: CUPS lässt sich auch über ein Webinterface verwalten, indem Sie „http://localhost:631“ in die Adressleiste des Browsers eingeben.

Das Besondere an CUPS: Es kann die oben erwähnten PPD-Dateien für Drucker auswerten. Die stecken häufig auch in Windows-Treibern und waren ursprünglich nur auf Windows- und Mac-OS-Systemen lesbar. Viele Windows-PPD-Dateien für PostScript-Drucker funktionieren dank CUPS nativ unter Linux. Doch auch für Nicht-PostScript-Drucker verwendet CUPS PPD-Dateien. Die Entwickler haben deren Struktur dafür lediglich ein wenig abgeändert.

Drucker-Ressourcen

Sie sollten sich allerdings nicht täuschen lassen: Trotz langer Listen gut funktionierender Drucker gibt es auch genügend Geräte, mit denen Linux nicht oder aber nur schlecht kooperiert. Die Zahl der verfügbaren Druckermodelle auf dem Markt ist einfach sehr groß. Sie sollten vor einem Kauf also auf den Linux-Support für das Druckermodell achten. Eine Online-Datenbank der Linux-Foundation [2] hilft Ihnen bei der Auswahl: Dort steht, ob und wie gut Linux Ihren Drucker unterstützt. Über das so genannte Foomatic-System [3] von Openprinting.org lassen sich zudem alte GhostScript-Filter in PPD-Dateien verwandeln. Die Druckqualität verbessert das nicht unbedingt, aber CUPS bietet eine einfachere Druckerverwaltung an und versteht sich zudem besser mit den grafischen Oberflächen zur Druckerverwaltung. Um die Foomatic-Filter zu nutzen, installieren Sie beispielsweise unter Ubuntu die Pakete mit foomatic im Namen. Generell gilt: Bevor Sie große Kompilierorgien beginnen, schauen Sie, ob nicht ein Paket CUPS mit den notwendigen PPD-Dateien für Ihren Drucker versorgt.

Stimmt die Druckqualität nicht, recherchieren Sie auf Openprinting.org, ob es vielleicht eine alternative PPD-Datei für Ihren Drucker gibt. Die Webseite ist ohnehin die erste Anlaufstelle, um sich über Drucken unter Linux zu informieren. Sie bietet zahlreiche – leider meist englischsprachige – Dokumente zum Drucken unter Linux an. Auch das CUPS-Projekt selbst hortet zahlreiche Informationsseiten [4], auch hier wieder fast ausschließlich in englischer Sprache. Mit ESP PrintPro gab es früher übrigens noch eine kommerzielle CUPS-Variante, die tausende von Druckern unterstützte. Die Weiterentwicklung dieser Variante wurde allerdings nach dem Wechsel des Hauptentwicklers Michael Sweet zu Apple eingestellt.

Suchen Sie auf der Seite der Linux-Foundation nach Ihrem Drucker, landen Sie mitunter auf kleineren Seiten, die Druckertreiber anbieten. So unterstützt das Gimp-Projekt mit Gutenprint [1] auch etwa 700 Drucker, darunter HP Laser- und Deskjets, Epson Stylus- und Photo-Color-Modelle sowie einige Canon- und Lexmark-Geräte. Ubuntu bringt ein eigenes Gutenprint-Paket mit (foomatic-db-gutenprint), das die von CUPS benötigten Treiber enthält. Unterstützt Ihr System Ihren Drucker nicht out of the box, ist erstmal Lesen angesagt.

EasyLinux 04/2008 KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS
Deutschland

Hinterlasse einen Kommentar

  E-Mail Benachrichtigung  
Benachrichtige mich zu: