[Openicc] Google Summer of Code 2011: The Common Printing Dialog and Color Management

Michael Sweet msweet at apple.com
Sun May 15 17:59:22 PDT 2011

On May 15, 2011, at 3:43 PM, Hal V. Engel wrote:
> ...
> C. It appears that IPP Everywhere has hooks to address getting profiles from remote print servers to deal with soft proofing issues that exist with the current CUPS API.  I suspect that this is partly in response to our requests to the CUPS team for such support.

Keep in mind that while IPP Everywhere has the beginnings of this (printer-icc-profiles), it has not yet been implemented in CUPS and likely won't be implemented until the next feature release after 1.5. The reason for this is pretty straight-forward: exposing multiple ICC color profiles poses some logistical and security issues that we need to work through to make it possible for a driver (or user) to (securely?) share out profiles stored on the system.

For Mac OS X we can count on ColorSync to be the source of user, system, and driver profiles, but right now I don't know how this will work for colord since the profile registrations only last as long as the DBUS session that made them...

> ...
> B. There is significant disagreement over how to handle target printing that appears to break down into two approaches.
> Use a specialized app.  A slight variation on this would be to approach one of the existing OSS apps and ask them to provide options for printing targets although I don't think this has been mentioned by anyone here yet.
> Allow any app to print targets and have specialized target printing functionality in the print UI.

I personally don't think the second option will yield useful target output. For the first option, if we just make this opt-in at the application level then ANY application could specify it wants a pass-through color management, which for the usual DeviceRGB/DeviceCMYK target images means no corrections for the input color space but still do the DeviceN separations in the driver/printer. This would not involve any UI in the print dialog but might be a different menu item or control in the application itself ("Print Target Image").

Similarly it would be trivial to provide a command-line tool or option for target printing.

> Now I would like to lay out a strawman for what we should do along with related issues.
> ...
> 3. CUPS
> A. We should be able to leverage the work done on the colord integration if the GSoC project is based on Oyranos.

Keep in mind that the current patch hasn't been integrated into CUPS (yet), and we have several impedance mismatches between colord and ColorSync WRT the life of profile registrations.

> B. We may need to do some work to simulate the IPP Everywhere ability to retrieve a profile for proofing.  This should not be too difficult as I was able to get something like this working by creating a few sym-links in the past.

The really tricky part is getting the security right. We've dealt with this in the past for PPD files and printer icons but need to expand the notion of printer resource files to handle multiple ICC profiles, font files, etc.

> 4. System Level CM
> A.  We should seriously consider making both CMMs use the same system level interfaces and perhaps even implement those now.  There is a Oyranos GSoC project this summer and perhaps this could add a colord style DBUS interface?

The major weakness I see in the colord DBUS interface is that registrations go away when the registerer :) goes away...

Michael Sweet, Senior Printing System Engineer, PWG Chair

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/openicc/attachments/20110515/2ba71ca7/attachment-0001.htm>

More information about the openicc mailing list