Hallo, On Nov 18 13:07 ALBERT Herbert wrote (shortened):
Wenn ich mir unter Suse Linux 10.0 /usr/share/cups/model/manufacturer-PPDs/ricoh/Ricoh-Aficio_CL7 100_PS.ppd.gz für den "RICOH Aficio CL7100 PS" anschaue, dann steht in der PPD im Abschnitt "InstallableOptions" die "Option5/Duplex Unit" per Default auf "False" ... Ein normaler Benutzer darf solche Optionen nicht in seinem Druckdialog verändern, denn normalerweise weiss nur Admin, was wirklich im Drucker physikalisch eingebaut ist.
In dem Fall ist eine eingebaut und der User soll entscheiden, ob er normal oder duplex druckt.
Die Option "Option5/Duplex Unit" im Abschnitt "InstallableOptions" ist nur für den Admin gedacht. Die normale Option "Duplex" ist für normale Benutzer gedacht.
*OpenUI *InputSlot: PickOne *OrderDependency: 30 AnySetup *InputSlot *DefaultInputSlot: Auto *InputSlot MultiTray/Bypass Tray: "<> setpagedevice" *InputSlot 1Tray/Tray 1: "<> setpagedevice" *InputSlot 2Tray/Tray 2: "<> setpagedevice" *InputSlot 3Tray/Tray 3: "<> setpagedevice" *InputSlot 4Tray/Tray 4: "<> setpagedevice" *?InputSlot: " save [(MultiTray)(1Tray)(2Tray)(3Tray)(4Tray)] statusdict /papertray get exec {get}stopped {pop pop (Unknown)}if = flush restore " *End *CloseUI: *InputSlot
Und da glaube ich liegt der Hase im Pfeffer. Ist Auto denn eigentlich definiert?
Seltsam. In meiner PPD ist genauso kein "Auto" definiert, aber lpoptions -p QUEUE -l zeigt mir trotzdem InputSlot/Media Source: MultiTray *1Tray 2Tray 3Tray 4Tray Auto an. Mit lpadmin -p QUEUE -o InputSlot=Auto kann ich das umstellen und danach liefert lpoptions -p QUEUE -l folgende Ausgabe InputSlot/Media Source: MultiTray 1Tray 2Tray 3Tray 4Tray *Auto In /etc/cups/ppd/QUEUE.ppd steht nun tatsächlich *DefaultInputSlot: Auto obwohl kein "Auto" definiert ist. Dennoch liefert cupstestppd /etc/cups/ppd/QUEUE.ppd keinen Fehler (und auch keine Warnung), sondern nur "PASS". Normalerweise ist es ein Fehler, wenn eine *Default Einstellung nicht als Auswahlmöglichkeit definiert ist. Ich kann so mit der Option "DuplexNoTumble/Long Edge" via CUPS-Warteschlange in eine Datei drucken (ich habe ja den Drucker nicht hier) wobei ich vorher auch die Option "Option5/Duplex Unit" auf "True" gestellt habe mit lpadmin -p QUEUE -o Option5=True Für mich scheint es also zu funktionieren obwohl "Auto" nicht definiert ist. Vermutlich ist "Auto" eine Spezialoption, die CUPS bereitstellt wenn sie nicht in der PPD definiert ist, damit der Benutzer sich nicht auf einen InputSlot festlegen muss. Im Fall von "Auto" erzeugt CUPS keinen PostScript Code zur Papierschachtwahl. Wählt man stattdessen z.B. "1Tray", so findet sich in der PostScript Ausgabe von CUPS ---------------------------------------------------------- %%BeginFeature: *InputSlot 1Tray <> setpagedevice %%EndFeature ---------------------------------------------------------- Obwohl es unnötig scheint, kann man "Auto" in der PPD definieren: *OpenUI *InputSlot: PickOne *OrderDependency: 30 AnySetup *InputSlot *DefaultInputSlot: Auto *InputSlot Auto/Printer default: "" *InputSlot MultiTray/Bypass Tray: "<> setpagedevice" *InputSlot 1Tray/Tray 1: "<> setpagedevice" ... Da ich mit CUPS in eine Datei drucken kann (dazu in /etc/cups/cupsd.conf "FileDevice Yes" setzten und als DeviceURI etwas in der Art wie "file:/tmp/QUEUE.prn" verwenden), kann ich mit meinen Möglichkeiten nicht nachvollziehen, warum es nicht funktionieren sollte. Gruss, Johannes Meixner -- SUSE LINUX Products GmbH, Maxfeldstrasse 5 Mail: jsmeix@suse.de 90409 Nuernberg, Germany WWW: http://www.suse.de/