Re: [CSS4 color][CSS4 transition] color pre-multiplied vs non pre-multiplied was (Re: [CSSWG] Minutes TPAC Tue 2012-10-30 AM I: Abstract Directions, Transforms, Transitions)

On 5/02/2013 3:52 PM, Brad Kemper wrote:

>> Wrong and correction. A pre-multiplied gradient of yellow to
>> transparent to blue compiste of a whitye background is identical to
>> a gradient of yellow to white to blue (fully opaque).
>>
>> What do you want to achieve with a gradient that has alpha
>> transparency and have you tested any of this by observing the
>> difference between pre-multiplied colorspace and non pre-multiplied
>> colorspace?
>
> As I recall, last time I had a problem with the way Safari does
> gradients, it was a solid color to transparent, and the stuff
> underneath it was variable, some white, some other colors. I just
> wanted the color to fade to transparent over the varied background,
> but instead it looked dirtier as it faded out.

Was this for a gradient with two color stops or three color stops? For a 
gradient with two color stops, you can avoid the dirtier composite color 
(really just less lighter ~ HSL) by going to it transparent counterpart. 
Like red to transparent-red or yellow to transparent-yellow. For a 
gradient with two color stops (transparent at one end), a non 
pre-multiplied gradient going back to it transparent-color is the same 
as a pre-multiplied gradient going to transparent (the keyword does not 
have a special meaning).

BTW, the way Safari does gradients is the way that Firefox does 
gradients prefixed and now un-prefixed (since FF16). The gradients are 
done in non pre-multiplied colorspace.



-- 
Alan Gresley
http://css-3d.org/
http://css-class.com/

Received on Tuesday, 5 February 2013 12:28:14 UTC