Road map for remaining pixman refactoring

Simon Thum simon.thum at gmx.de
Wed Jun 10 04:12:20 PDT 2009


Soeren Sandmann wrote:
> Simon Thum <simon.thum at gmx.de> writes:
> 
>> For the more artistic cases directed at perceptual qualities (like
>> some gradients, but not the WM shadow gradient!), luma modulation is
>> of course desirable. But there are better tools for this purpose, like
>> the L*a*b* space. So why go to such great lengths with luma mod?
> 
> Compositing in sRGB is hardly going to great lengths. All I'm saying
> is that compositing in linear RGB it not always the right choice.
Me too, I was trying to say an additional channel is 'going to great 
lenghts'.

> can work out a formula that looks something like this:
> 
>     (m * s ** 2.2 + (1 - m) d ** 2.2) ** 1/2.2 + (1 - s_a * m) * d
> 
> With current pixman you get the right color, but wrong antialiasing -
> if you treated alpha as coverage, you'd get the wrong color, but the
> right default. I don't think this can be broken into a simple property
> on the operation; you really need an indication what the alpha channel
> actually means.
Ok, got it. Nice idea, it just wasn't apparent to me from the docs.

However I wouldn't restrict that to luma modulation; newer SVG drafts 
enable also Lab and Lch to be specified for color interpolation.

> I don't see how L*a*b bails you out either, because it
> doesn't deal with translucency/coverage at all.
Right, It's just better at reflecting properties of the visual system 
than plain RGB. Personally, I would use either linear RGB or Lab/Lch for 
colour interpolation, not encoded RGB. It's convenient, but 'between the 
chairs'.

Cheers,

Simon


More information about the xorg-devel mailing list