• Diese Seite verwendet Cookies. Indem du diese Website weiterhin nutzt, erklärst du dich mit der Verwendung von Cookies einverstanden. Erfahre mehr

Frage wie Duplex-Druck unter lpd aktivieren

serie300

Well-Known Member
Themenstarter #1
Hallo

ich habe einen OKI LED Drucker mit Duplex Einheit (Duplex funzt auch unter Win), den ich mit PCL (ja der Drucker hat Standard PCL, IBM Lineprinter etc. Emulation) über das lpd System ansteuere.
Auszug aus /etc/printcap
Code:
pspcl:\
        :lp=/dev/unlpt0:\
        :sh:\
        :mx#0:\
        :if=/usr/local/libexec/ps2pcl:\
        :sd=/var/spool/lpd/pspcl:\
        :lf=/var/log/lpd-errs:
lp -d pspcl abc.pdf druckt auch brav das Dokument, aber nureinseitig :(. Weiß jemand, wie ich den zu Duplex Druck aus dem lpd System überreden kann? Ja es soll '-o duplex' geben, aber woher sollte lpd die Steuercodes kennen.
lptoptions -l -p pspcl gibt nur lpoptions: Keine Drucker.

Serie300
 

mr44er

moderater Moderator
Mitarbeiter
#2
-o sides-default=two-sided-long-edge
Vielleicht so?

Manchmal bringts auch Ideen, wenn man die inf-Files unter Windows mal durchscrollt.
 

Yamagi

Possessed With Psi Powers
Mitarbeiter
#3
Ganz allgemein gesagt, was dir allerdings eher wenig helfen wird, muss der Input-Filter (bei dir das ps2pcl) die Steuerzeichen einfügen. Das Problem dabei ist, dass die meisten Drucker da eigene Suppe kochen. Selbst wenn man die Steuerzeichen kennt, bringt einem das ohne zusätzliche Arbeit erstmal nichts. Ein denkbarer Weg wäre, ps2pcl durch ein Wrapperscript zu ersetzen, was das Einfügen übernimmt.
 

serie300

Well-Known Member
Themenstarter #4
Habe nochmal via 'ghostcript duplex' im Zwischennetz geschaut. Eigentlich sollte gs der richtige Platz sein, da es wahrscheinlich als erstes einen printer Reset macht und so vorherige Einstellungen löscht.

Es gibt ein device lj4d oder 'pxlmono -dDuplex'. Jemand Erfahrungen damit? Die ghostscript Webseiten sind z.T 20 Jahre alt.
 

PhysChemist

Well-Known Member
#5
Hallo,

ich habe mich vor kurzem mit ähnlichem beschäftigt. Ich wollte Druckoptionen wie Duplex-Druck oder Papierschacht auswählen können.

Soweit ich gekommen bin, funktioniert das mit CUPS und lprng. Letzteres wird nicht mehr supported. CUPS ist mir zu aufgebläht. Somit sind diese Möglichkeiten für mich entfallen.

Mein Drucker unterstützt PS direkt. Aus einer PPD-Datei habe ich mir die Kommandos für die jeweiligen Parameter rausgewühlt. Damit konnte ich aus (PS|PDF)-Vorlagen PS-Dateien erstellen, die das gewünschte Druckverhalten als Kommandos enthalten.

Meine nächste Idee war, das ganze als Script zu verpacken und als Filter über lpd (printcap if=) aufrufen. Wenngleich das machbar scheint (evtl. mal apsfilter anschauen [wird wohl auch nicht mehr supported]) war ich unglücklich, da lpr unter OpenBSD und FreeBSD kein simples '-o irgendwas' unterstützen. Die Auswahl des Duplexmodes oder des Papierschachtes müsste im Jobnamen oder ähnlichen Parametern verpackt werden -- da hatte ich keine Lust drauf.

Nach längerer Suche bin ich irgendwo auf den Ansatz gestoßen, die Druckdatei nicht von lpd sondern auf 'Userseite' anzupassen. Jetzt habe ich ein kurzes (nicht sonderlich schönes) Shellscript 'xplr', dass PS- und PDF Dateien unterstützt. Via '-o duplex -o tray1' o.Ä. kann Druckparameter übergeben. Die meisten Optionen, die mein Script nicht kennt werden an lpr weiter gegeben.
Das Script erstellt eine PS-Datei, dass die Steuersequenzen für den Drucker enthält und leitet deren Inhalt via Pipe an lpr. lpd leitet das ganze ohne weiter Filter an den Drucker.

Lange Rede, kurzer Sinn -- Meine Empfehlung wenn Du nicht CUPS verwenden willst ist:
1) Richte printcap so ein, dass Daten ohne weitere Verarbeitung an den Drucker gesendet werden.
2) Suche eine Möglichkeit Druckdateien zu erzeugen, die die Steuersequenzen enthalten (z.B. via gs)
3) Erstelle ein Script, dass die gewünschten Parameter über die Kommandozeile annimmt und verarbeitet

Das Ganze lässt sich m.E. nicht übermäßig gut in andere Anwendungen integrieren, die Druckausgaben direkt unterstützen!

Wenn es von Interesse ist, kann ich mein Script gerne posten. Aber ich warne Neugierige. Es handelt sich um einen schnellen Hack, der einen Drucker und zwei Parameter unterstützt (works for me!). Ich habe auch keine wirkliche Ahnung von Postscript (als Sprache), sondern habe nur eine Einstellung gefunden|geklaut, über die ich erreiche, was ich will.

Schönen Abend
PhysChemist
 

serie300

Well-Known Member
Themenstarter #6
Hallo

Danke für die Antworten. Das Ghostscript Device lj4d macht den Duplexdruck. Ja CUPS ist mir auch zu aufgebläht, deshalb 'lp / lpd' System
 

serie300

Well-Known Member
Themenstarter #8
Sorry, dass ich mal so nachfrage: Warum zu aufgebläht? Was kann man gegen ein paar Pakete haben und ein bequemes Webinterface (oder gar hplip für HP-Drucker), um alles ganz einfach zu konfigurieren (sogar Netzwerkdruck)?
Ist persönliche Geschmackssache. Ich nutze halt UNIX schon seit 25 Jahren und bevorzuge Bordmittel. Bei lpd kann ich mir einfach virtuelle Drucker mit verschiedenen Einstellungen und Konvertierungen anlegen (z.B. noch a2ps in die Pipe). Ich weiß CUPS kann besser mit Durcker Feinheiten umgehen, brauch ich aber nicht.