Comment 20 for bug 235399

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

Aaron, here I think HPLIP (Mary, HPLIP is HP's driver package for their printers and multi-function devices) should get more user-friendly.

As HPLIP PPDs are noe generated by CUPS DDK and not by Foomatic any more, one could introduce an "Installable Options" group in which the administrator can tell which hardware configuration of the given printer is actually used, like we know already from the PostScript models. UIConstraints can hide or gray (depends on the application's UI) extra trays or duplex settings if appropriate accessories are not installed.

For LIDIL printers (and generally printers where the driver must know about the actually installed cartridges) the group can in addition contain also an "InkSet" option, in which the user configures which cartridges he has actually installed. An UI constraint will then exclude the "Quality" settings which are not suitable for the given ink set.

This would break the PrintoutMode option, as the "Quality" settings behind of some of its choices could be disqualified by the given ink set. And we must conserve the PrintoutMode option, as in the Common Printing Dialog (https://www.linuxfoundation.org/en/OpenPrinting/CommonPrintingDialog) it will translate into the Quick Preset buttons.

So we do not let the PrintoutMode option be a Foomatic composite option any more. We let Quality, PrintoutMode, and InkSet all inject command line fragments into the GhostScript/HPIJS command line. If Quality is not set to "FromPrintoutMode" HPIJS will use the Quality setting (and perhaps use the closest suitable or exit with an error if it conflicts with InkSet). If Quality is set to "FromPrintoutMode" HPIJS will take the PrintoutMode setting and look up in an internal table which Quality it has to use dependent on the given InkSet and PrintoutMode.

This way the default setting of PrintoutMode is always "Normal" and of Quality always "FromPrintoutMode". Modern printer setup tools automatically ask the user for setting the "Installable Options" and so the user gets asked which cartridges he has. So InkSet gets set correctly and the printer makes always best use of the cartridges. And if the suer switches to "Draft", "High", or "Photo" HPIJS uses the Quality setting which makes best use of the cartridges in these modes.

Aaron (or anyone else there at HP), what do you think?