Comment 18 for bug 984082

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

Pawel, this resolution entry is used if Ghostscript has to turn graphical content of the PDF into a bitmap if PostScript does not support this type of graphical content, especially transparency. A bitmap always needs a resolution, also if the source data is entirely vector graphics. If the resolution is not specified Ghostscript uses 720 dpi and Poppler (/usr/bin/pdftops) uses 300 dpi, which caused the slower rendering of Ghostscript's output in a PostScript printer (http://bugs.ghostscript.com/show_bug.cgi?id=693016). Also the mismatch of the resolution raster, as 720 dpi on a printer with 300/600/1200 dpi, can cause slow rendering of a bitmap in the printer.

To overcome these problems I have introduced to specify the resolution and for that choosing the one fitting best to the job, usually taking the setting of the "Resolution" option. Unfortunately, there are PPD files without "Resolution" option or choice names do not tell about the actually used resolution, some have marketing-designed choice names with numbers much higher than the actually used resolution. If there is no "Resolution" option I have used CUPS library functions to analyse the PostScript code in the PPD to discover which resolution is actually used.

Now I have changed the code to start with analysing the PostScript in the PPD and falling back to the choice names of the "Resolution" option if the PostScript does not deliver anything useful. This I will soon make available as an update.

In any case, if there is no hint to the resolution used for printing a job we fall back to 300 dpi, as this works with most PostScript (laser) printers and output quality is not behind Poppler.