W3C home > Mailing lists > Public > www-svg@w3.org > July 2011

Re: icc profiles and compositing

From: Chris Lilley <chris@w3.org>
Date: Wed, 27 Jul 2011 19:12:36 +0200
Message-ID: <575938016.20110727191236@w3.org>
To: Nick Hofstede <Nick.Hofstede@inventivegroup.com>
CC: "www-svg@w3.org" <www-svg@w3.org>
On Wednesday, July 27, 2011, 2:02:07 PM, Nick wrote:

NH> ChrisL told me on IRC 

logged here
http://lists.w3.org/Archives/Public/public-svg-wg/2011JulSep/0015.html

NH> that this was discussed during a call 
NH> and that there was an action item created for responding to this.

NH> However, I don’t see an action item for this
NH> <http://www.w3.org/Graphics/SVG/WG/track/issues>, 

(That is the issues list, not the actions list.)

ACTION-3062: Respond to "ICC profiles and compositing" mail on www-svg
http://www.w3.org/Graphics/SVG/WG/track/actions/3062

Its also on the agenda for the face to face meeting this week
http://www.w3.org/Graphics/SVG/WG/wiki/F2F/Seattle_2011/Agenda
 
NH> Can someone clarify how the specification should be interpreted?
NH> What conversions happen when I specify a CMYK color that needs to be rendered to a CMYK device?

In SVG 1.1, all interpolation and compositing happens in the SRGB colour space (the values for the color-interpolation property only allow sRGB or linearRGB)

http://www.w3.org/TR/SVG11/painting.html#ColorInterpolationProperty

and all filter operations are similarly limited by the color-interpolation-filters property

http://www.w3.org/TR/SVG11/painting.html#ColorInterpolationFiltersProperty

So if a CMYK colour is used
- with opacity
- in a gradient
- in a graphic that uses filter effects
then the colour is converted into sRGB. The original values, the rendering intent, are therefore lost and there will be compression of out of gamut colours.

Opaque solid colours which are unfiltered, will pass straight through and will be available to the output device. In an ICC workflow, if the output device uses the same profile as was used to define the colours in the SVG file then the CMYK values will be used without adjustment. otherwise, the CMYK input values will be converted to the profile connection space (likely CIE Lab) and then converted to the output CMYK space.

In SVG color, some of these restrictions are lifted. color-interpolation is extended to allow several new values, 

http://dev.w3.org/SVG/modules/color/master/SVGColor.html#interpolation

of which the most relevant to this question is CIELab with a D50 whitepoint; this is the same as the ICC profile connection space. Thus, in cases where colours are interpolated or composited, conversion from CMYK still happens, but in this case there is no gamut compression.

It is still an issue that the original rendering intent is lost.

It is still an issue that we don't have a way to specify preserve-black, and that we don't have control over black point compensation.

Some issues are listed in the discussion document for this weeks meeting:
http://www.w3.org/Graphics/SVG/WG/wiki/Proposals/Color




-- 
 Chris Lilley   Technical Director, Interaction Domain                 
 W3C Graphics Activity Lead, Fonts Activity Lead
 Co-Chair, W3C Hypertext CG
 Member, CSS, WebFonts, SVG Working Groups
Received on Wednesday, 27 July 2011 17:13:08 GMT

This archive was generated by hypermail 2.3.1 : Friday, 8 March 2013 15:54:48 GMT