Re: [css-color] wider/deeper colors

Hello Florian,

Tuesday, February 16, 2016, 2:09:22 PM, you wrote:

>> On Feb 16, 2016, at 18:34, Chris Lilley <chris@w3.org> wrote:
>>> (Florian wrote:
>>>  model: rgb | xyz | cmyk | ...;
>>> }
>> 
>> I think that is better done with fallbacks, like the ones in a font
>> stack. Given that we have some predefined names, they can be used last
>> in the same way that generic font-families are.

> Something like this:

> @colors "foobar" {
>  profile: url("foobarRGB.icc"), url("someotherRGB"), sRGB;
> }

Yes (although a wider one than sRGB would likely be used in this
case). Clearly, the color will not be correct, but it will be closer
than just showing transparent black or black or something. In that, it
is fairly similar to font fallbacks.

> and it's the author's job to have in the fallback list things that
> use compatible models? Falling back form foobarRGB to someotherRGB
> to ultimately sRGB is fine, but not all color spaces have an r g and b axis.

Correct.

> We can also provide a last resort CMYK space,

And I think we should. Perhaps coated SWOP?

>  but ICC profiles can
> be defined not only in rgb, cmy, cmyk, or monochrome, but also if I
> understand correctly any number (up to 16) of axes. How do we deal with fallback then?

Yes, they can. 

>> Also we don't need xyz (or lab) in that list; they don't need a
>> profile, they are already fully defined.

> Doesn't that mean that CIEXYZ and CIELAB should be built-in
> profiles,

Sort of. A profile is a mapping of an input color to profile
connection space (PCS, which is either LAB or XYZ, as convenient), or
from PCS to an output color space.

To specify a color in Lab you don't need a profile. But yes, it would
be a predefined name; CSS WG already agreed to Lab (and LCH) colors
previously.

> along with sRGB, so that you can do color("CIELAB" 50 96 -42) ?

Yes.

>> Do you mean the existing CSS4 color function, or the function that
>> used to be called icc-color?

> Ooops, I forgot about the CSS4 color function, so I was using the name
> for a different purpose. I meant the function which Tab called icc()
> function which should have a syntax like this:

> ( <string> [ <number>+ | <string> ] [, <alpha-value> ]? )

OK good, I suspected you did, but thanks for the clarification.




-- 
Best regards,
 Chris  Lilley
 Technical Director, W3C Interaction Domain

Received on Tuesday, 16 February 2016 15:16:45 UTC