Comment 6 for bug 325436

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

First, the PPD file selected for your printer on the print server is not the best one. Perhaps on the server (whatever distro it is running) the manufacturer-supplied PPDs (part of either the HPLIP or the foomatic-db package) are not installed there. You can get also the single manufacturer-supplied PPD file for your printer from

http://openprinting.org/show_printer.cgi?recnum=HP-LaserJet_8150

If you want to see/download a printer's PPD on a remote CUPS server, go to the web interface of CUPS (http://localhost:631/), go to the page to manage the existing print queues and select the desired printer. When you are on the printer's page, add ".ppd" to the end of the URL and press Return. Then the printer's PPD gets displayed in the browser and you can save it locally with "File"/"Save as ...".

The URL of a printer's page looks usually like that

http://<name or IP of server>:631/printer/<queue name>

and of the PPD:

http://<name or IP of server>:631/printer/<queue name>.ppd

You can also wget this URL, for example to let a script read the PPD file.

The PPD you are using is very generic and therefore does not support printer-internal features to simplify printing multiple copies. It contains

*cupsManualCopies: True

which means that multiple copies get implemented by sending the job's full content repeatedly, once per copy. It does not contain "*cupsEvenDuplex" nor a "Collate" option.

Your test of adding "/NumCopies 2" to the PostScript code (this code sets the item NumCopies to the value 2 in the setpagedevice dictionary) shows that the printer is actually able to do multiple copies internally.

According to the manufacturer-supplied PPD file the printer supports multiple copies by hardware and it also supports collate by hardware, but this only with a hard disk. So collated copies have to be done by CUPS, in our case by the pdftopdf filter if there is no disk in the printer.

Can you try the following:

Set up a queue for you printer with the generic PPD (Foomatic/Postscript) and edit the PPD (/etc/cups/ppd/<queue>.ppd) adding the line "*cupsEvenDuplex: True" right after the line "*cupsManualCopies: True". Restart CUPS ("/etc/init.d/cups restart") and see whether this queue prints the copies correctly.

Set up a queue with the manufacturer-supplied PPD. Does this work?

If one looks at above-mentioned manufacturer