SDB:GDI-Drucker
aus openSUSE, der freien Wissensdatenbank
Inhaltsverzeichnis |
Anliegen:
Ein sog. GDI-Drucker (Windows-only-Hardware) soll zum Laufen gebracht werden.
Zur GDI-Drucker Problematik:
Da die Druckertreiber für Linux normalerweise nicht vom Hersteller der Hardware entwickelt werden, ist es erforderlich, daß der Drucker über veröffentlichte Standardprotokolle angesprochen werden kann - z.B. die Druckersprachen PostScript, ESC/P und HP PCL (aber nicht HP PPA). Vergl. den Supportdatenbank-Artikel "SDB:Drucker-Kauf und Kompatibilität".
Verzichtet der Hersteller auf ein Standardprotokoll und steuert den Drucker direkt mit den Steuerimpulsen des speziellen Modells an, so hat man einen sog. GDI-Drucker, der nur unter der Betriebssystemversion, für die ein Treiber mitgeliefert wurde, läuft.
GDI ist eine von Microsoft entwickelte Programmierschnittstelle zur grafischen Darstellung. Das Problem ist nicht diese GDI API, sondern daß die sog. GDI-Drucker nur über die proprietäre Druckersprache des jeweiligen Druckermodells angesprochen werden können. Eigentlich wäre die Bezeichnung "Drucker, der nur über ein proprietäres Protokoll angesprochen werden kann" korrekter.
Von besonderer Art sind solche Drucker, die nur rudimentäre Teile einer Standarddruckersprache "verstehen" - etwa nur die Befehle, die zur Ausgabe von Rastergrafik-Daten benötigt werden.
Solche Drucker können manchmal ganz normal verwendet werden, da viele Ghostsscript-Treiber normalerweise nur die Befehle zur Ausgabe von Rastergrafik-Daten verwenden. Natürlich kann dann kein ASCI-Text direkt auf dem Drucker ausgegeben werden, aber standardmäßig ist ja immer Ghostsscript zwischengeschaltet.
Problematisch sind solche Drucker, wenn sie dazu erst durch spezielle Steuersequenzen in einen besonderen Modus umgeschaltet werden müssen. Hier kann kein normaler Ghostsscript-Treiber verwendet werden, sondern es braucht einen speziell angepassten Ghostsscript-Treiber, der diese Umschaltung vornimmt.
Da dies kein Standardprotokoll ist, fallen auch diese Drucker unter die sog. GDI-Drucker.
Voraussetzungen
Die normalen Voraussetzungen zur Verwendung eines Druckers unter SuSE Linux finden Sie in den mitgelieferten Handbüchern oder im Supportdatenbank-Artikel "SDB:Drucker einrichten"
Hinweise:
Bitte beachten Sie, daß wir nicht für die Verläßlichkeit der folgenden Angaben garantieren können, da wir GDI-Druckertreiber nicht selbst testen (wir kaufen keine GDI Drucker).
Für manche GDI-Drucker gibt es spezielle Treiberprogramme im Internet. Unter den im Supportdatenbank-Artikel "SDB:Drucker einrichten") finden sich Informationen auch zu GDI-Druckertreibern.
Viele GDI-Druckertreiber haben besondere Einschränkungen, weswegen GDI-Drucker oft nicht unter den üblichen Bedingungen verwendet werden können.
Oft müssen GDI-Druckertreiber auf spezielle Art in Betrieb genommen werden, so dass es keine Möglichkeit gibt, den GDI-Drucker mit YaST2 einzurichten.
Da wir GDI-Drucker nicht selbst testen, wollen wir nicht "einfach so" GDI-Druckertreiber bei unseren Produkten mitliefern, ohne dass wir zumindest die grundsätzliche Funktionsfähigkeit annehmen können.
Manche GDI-Druckertreiber erforden ein Vorgehgen, das Lizenzprobleme aufwerfen könnte, wenn wir diese Treiber auf unseren CDs hätten. Wir werden keinesfalls Lizenzstreitigkeiten riskieren, nur um irgendeine Art von Unterstützung für derart problematische Hardware zu haben.
Offensichtlich entwickeln wir selbst keinerlei GDI-Druckertreiber, denn es gibt Hunderte (tatsächlich mehr als Tausend) Druckermodelle, die gut mit Linux funktionieren - siehe den Supportdatenbank-Artikel "SDB:Drucker-Kauf und Kompatibilität".
Vorgehen ab SuSE Linux 7.1
Ab SuSE Linux 7.1 sind folgende GDI-Drucker durch die Druckerkonfiguration mit YaST2 unterstützt - teils nur Schwarzweißdruck, aber teils auch Farbdruck:
- HP DeskJet 710C , 712C , 720C , 722C , 820C , 1000C und dazu kompatible Modelle.
Damit sollten alle HP DeskJet Modelle, die die HP GDI-Druckersprache HP PPA können, unterstützt sein. - Lexmark 1100 , 2030 , 2050 , 2070 , 3200 , 5700 , 7000 , Z11 und dazu kompatible Modelle.
Es scheint aber bei Lexmark-Druckern kaum Kompatibilität bzw. einen kleinsten gemeinsamen Nenner (d.h. eine gemeinsame GDI-Druckersprache) der einzelnen Modelle zu geben.
So soll z.B. der Lexmark Z51 zwar mit dem Treiber für den Lexmark 7000 funktionieren, aber der Lexmark Z52 funktioniert sicher nicht mit diesem Treiber, sondern braucht einen Treiber direkt von Lexmark.
Die Treiber direkt von Lexmark finden Sie unter http://www.lexmark.com/printers/linuxprinters.html - Brother HL 720 , 730 und dazu kompatible Modelle.
Der Nachteil herstellereigener Treiber für GDI Drucker ist, daß nicht garantiert werden kann, daß diese mit verschiedenen (zukünftigen) Linux-Versionen (noch) funktionieren werden. Drucker, die eine veröffentlichte Standarddruckersprache "verstehen", sind dagegen weder von einem speziellen Betriebssystem, noch von einer speziellen Betriebssystemversion abhängig.
Zur Kompatibilität siehe den Supportdatenbank-Artikel "SDB:Drucker-Kauf und Kompatibilität"
Ab SuSE Linux 8.0
Ab SuSE Linux 8.0 sind zusätzlich folgende GDI-Drucker direkt durch die Druckerkonfiguration mit YaST2 unterstützt (evtl. nur Schwarzweißdruck):
- Lexmark 1000 , 1020 , 5000 , 7200 , Z42 , Z43 , Z51 und Z52.
- Brother HL 820 , 1020 , 1040 und MFC-4650 , 6550MC , 9050.
- Oki Okipage 4w , 4w+ , 6w , 8w , 8w Lite , 8z , 400w und dazu kompatible Modelle.
- Samsung ML-200 , 210 , 1000 , 1010 , 1020 , 1200 , 1210 , 1220 , 4500 , 5080 , 6040 und dazu kompatible Modelle.
Vorgehen bis SuSE Linux 7.0
Bis SuSE Linux 7.0 wurden folgende GDI-Drucker von SuSE Linux unterstützt:
- HP DeskJet 710/720, 820, 1000
- Lexmark 7000, 7200, 5700
- Brother HL 720, 730
- zu obigen Modellen kompatible Drucker
Allerdings lassen sich diese Drucker bis SuSE Linux 7.0 nur in schwarzweiß betreiben.
HP DeskJet Modelle 710/720, 820, 1000
Zusätzliche Voraussetzung:
Das Paket ppa (Serie ap) muß installiert sein.
Installieren Sie das Paket wenn nötig mit YaST (oder YaST2).
Hier weiterführende Informationen:
http://sourceforge.net/project/?group_id=1322
Konfiguration:
- Machen Sie die Konfiguration mit SETUP (bzw. lprsetup) wie im Supportdatenbank-Artikel "SDB:Drucker einrichten" beschrieben:
Wählen Sie dabei unter HEWLETT-PACKARD als Treiber- ppa720 : für einen DeskJet 710/720 (und kompatible Modelle)
- ppa820 : für einen DeskJet 820 (und kompatible Modelle)
- ppa1000 : für einen DeskJet 1000 (und kompatible Modelle)
und geben Sie anschließend600
als Auflösung ein.
- Die passende der Dateien
pbm2ppa.conf.hp720pbm2ppa.conf.hp820pbm2ppa.conf.hp1000
aus dem Verzeichnis/usr/doc/packages/ppa
bzw. seit SuSE Linux 7.0
aus dem Verzeichnis/usr/share/doc/packages/ppa
nach/etc/pbm2ppa.confkopieren.
Z.B.:cp /usr/doc/packages/ppa/pbm2ppa.conf.hp720 /etc/pbm2ppa.conf
bzw. seit SuSE Linux 7.0 z.B.:cp /usr/share/doc/packages/ppa/pbm2ppa.conf.hp720 /etc/pbm2ppa.conf - Die Offsets sind solange anzupassen, bis ein korrekter Ausdruck erfolgt. Bei falschen Offsets bleibt der Drucker beim Ausdruck mit blinkenden LEDs stehen und muß dann komplett aus und wieder eingeschaltet werden.
Zusatzinformationen dazu finden sich in der folgenden Datei/usr/doc/packages/ppa/CALIBRATION
bzw. seit SuSE Linux 7.0 z.B.:/usr/share/doc/packages/ppa/CALIBRATION
Vorgehen:
Die folgenden Schritte solange wiederholen, bis der Testausdruck einer Datei korrekt erfolgt.- Ausdruck einer A4 Testseite sofern der Drucker an
/dev/lp0angeschlossen istpbmtpg -a4 | pbm2ppa >/dev/lp0 - Anpassen der Offsets in der Datei
/etc/pbm2ppa.confmit einem Editor - z.B. mitmcedit /etc/pbm2ppa.conf
Beispielwerte siehe unten. - Testausdruck einer Datei - z.B. mit
a2ps -1 -M a4dj --borders=yes -o - /etc/pbm2ppa.conf | lprNotfalls ist gemäß dem Supportdatenbank-Artikel "SDB:Drucken: Seitengröße für Ausdruck von ASCII-Dateien einstellen" die Größe des Mediumsa4djfüra2pszu verkleinern.
Auch beim Druck aus anderen Programmen sind evtl. die Randeinstellungen erst anzupassen, bevor ein Ausdruck möglich ist.
- Ausdruck einer A4 Testseite sofern der Drucker an
Beispielwerte für den 720C :
papersize a4 xoff 75 yoff -500 top 0 bottom 0 left 150 right 150
oder
papersize a4 xoff 75 yoff -300 top 100 bottom -100 left 150 right 150
Beispielwerte für den 710C :
papersize us xoff 75 yoff -500 top 150 bottom 150 left 150 right 150
Beispielwerte für den 820C :
xoff 25 yoff -325 top 100 bottom -100 left 250 right 250
oder
xoff 0 yoff -325 top 0 bottom 0 left 120 right 160
Dank für Feedback und weiterführende Informationen geht an Clemens Dorda und Thies Freymuth.
Lexmark Modelle 7000, 7200, 5700
Zusätzliche Voraussetzung:
Das Paket pbm2l7k (Serie ap) muß installiert sein.
Installieren Sie das Paket wenn nötig mit YaST (oder YaST2).
Hier finden Sie Informationen zum Modell 5700: http://www.ultranet.com/~setaylor/papers.htm
Hier finden Sie Informationen zum Modell 7000: http://bimbo.fjfi.cvut.cz/~paluch/l7kdriver/
Seit SuSE Linux 6.2 ist dieser Treiber als Paket pbm2l7k (Serie ap) dabei.
Konfiguration:
Machen Sie die Konfiguration mit SETUP (bzw. lprsetup) wie im Artikel SDB:Drucker einrichten beschrieben:
Wählen Sie dabei unter OTHER
- lex7000 : für einen Lexmark 7000 (und kompatible Modelle)
- lex7200 : für einen Lexmark 7200 (und kompatible Modelle)
- lex5700 : für einen Lexmark 5700 (und kompatible Modelle)
und geben Sie anschließend600
als Auflösung ein.
Brother HL 720, 730
Für den Brother HL 720, HL 730 und kompatible gibt es bei seit Ghostscript 5.xx den Treiber hl7x0.
Der Brother HL 760 ist kein GDI Drucker. Dieser wird durch den Ghostscript-Treiber ljet4 unterstützt.
Dank für den Hinweis an Pablo Saratxaga und Ralf Mayer.
SDB:Drucker-Kauf und Kompatibilität
SDB:Drucken: Seitengröße für Ausdruck von ASCII-Dateien einstellen
Keywords: gdi | drucker | drucken | pbm

