OpenPrinting / system-config-printer

Graphical user interface for CUPS administration
GNU General Public License v2.0
157 stars 88 forks source link

What does the setting "printer resolution" mean? Why can't I change it? #214

Closed Golddouble closed 3 years ago

Golddouble commented 3 years ago

When I open Xfce-settings and right click on the printer-settings icon -> properties, and then go to the section "job options", then I get this: Settings

1. Question: What does "printer resolution" mean?

I have always thought, that my document or my picture is printed out with the resolution that this document/picture has. So when I print a picture that has a resolution of 1200x1200 dpi, I thought, then this picture will be printed out with 1200x1200dpi. And when I have a picture, that has 75x75dpi, then this picture would be printed with 75x75dpi. Am I wrong?

I don't know, if this is relevant, but this is what I have in the section "printer options": printer options


2. Question: When I then click on "printer resolution" to change it, then the only setting I can choose is 300x300dpi ! Why can't I change this, although I know, that my printer is able to print in a resolution of 1200x1200dpi ? Does this mean, in Linux I can only print with 300x300dpi ? Very confusing.

Thank you.

Edit: I have not found any description of all this job-options-printer-settings anywhere. Did I miss them?

zdohnal commented 3 years ago

1. Question: What does "printer resolution" mean?

If we use the definition from RFC [1], it is a resolution which is used for the job by printer.

[1] https://tools.ietf.org/html/rfc2911#ref-IPP-IIG

I have always thought, that my document or my picture is printed out with the resolution that this document/picture has. So when I print a picture that has a resolution of 1200x1200 dpi, I thought, then this picture will be printed out with 1200x1200dpi. And when I have a picture, that has 75x75dpi, then this picture would be printed with 75x75dpi. Am I wrong?

IIUC you are limited by resolutions which your device supports - so the output resolution will be the one the printer supports.

2. Question: When I then click on "printer resolution" to change it, then the only setting I can choose is 300x300dpi ! Why can't I change this, although I know, that my printer is able to print in a resolution of 1200x1200dpi ? Does this mean, in Linux I can only print with 300x300dpi ? Very confusing.

This option depends on how you installed the printer:

A) if you install the queue with a classic driver, the resolution is defined in PPD file - so if PPD file doesn't mention any other resolutions, it will not be shown in system-config-printer.

B) if you install the queue as driverless/IPP everywhere, the resolution is taken from IPP response from the device - so if the device 'says' it supports several resolutions, then it will be shown in system-config-printer.

Thank you.

Golddouble commented 3 years ago

A) This is the content of my ppd:

[...]
*DefaultOutputMode: Normal
*OutputMode Normal/Normal: "<</OutputType(0)/HWResolution[600 600]>>setpagedevice"
*OutputMode FastDraft/Draft: "<</OutputType(-2)/HWResolution[300 300]>>setpagedevice"
*OutputMode Best/Best: "<</OutputType(1)/HWResolution[600 600]>>setpagedevice"
*OutputMode Photo/High-Resolution Photo: "<</OutputType(2)/HWResolution[1200 1200]>>setpagedevice"
*CloseUI: *OutputMode
[...]

As you can see: there are three resolutions defined in it. 300x300; 600x600; 1200x1200 . But as mentioned, I can only choose 300x300 . Confusing. Maybe this has something to do with the section "printer options" (see picture above), where I do not have a field "resolution"? Maybe my printer does not support such a setting?

Also when I change in "printer options" from "normal" to "High-Resolution Photo", I have still not a choice in the filed "printer resolution".

zdohnal commented 3 years ago

AFAIK the strings /HWResolution are a postscript commands, which are added to the print job if you choose that specific output mode. So in any printing tool you will see just options for OutputMode, not the resolutions.

Golddouble commented 3 years ago

Thank you.

This option depends on how you installed the printer:

A) if you install the queue with a classic driver, the resolution is defined in PPD file - so if PPD file doesn't mention any other resolutions, it will not be shown in system-config-printer.

B) if you install the queue as driverless/IPP everywhere, the resolution is taken from IPP response from the device - so if the device 'says' it supports several resolutions, then it will be shown in system-config-printer.

A) In the properties of my HPLIP driver, then in "printer resolution" setting, the only value I can choose is 300x300dpi. B) In the properties of my driverless printer, then in "printer resolution" setting, the only value I can choose is 600x600dpi.

So the device 'says' (B), that it supports only 600x600dpi, but the HP driver has defined in his PPD file only 300x300dpi ? Confusing.

(When I use this printer in windows, I have no setting "resolution" there. I only have " 'printing with max. resolution' yes/no".)

(?)

zdohnal commented 3 years ago

So the device 'says' (B), that it supports only 600x600dpi, but the HP driver has defined in his PPD file only 300x300dpi ? Confusing.

If you feel this is an error, please feel free to file a bug against in their bug tracker https://bugs.launchpad.net/hplip .