[cairo] 29e22cf38e8abc54b9dddbdeb3909d02866a82a0 - Enable component alpha on solid mask
chris at chris-wilson.co.uk
Mon Sep 14 05:15:03 PDT 2009
Excerpts from Soeren Sandmann's message of Mon Sep 14 12:51:47 +0100 2009:
> Hi Chris (and also the list, this time)
> Thanks for adding the new test from rendercheck. That is going to be
> useful. Most of the other commits look good too, but I don't
> understand the component-alpha-on-solid-mask one:
> Is there any reason to believe that anyone would actually do this? It
> doesn't seem useful to me. And if we are going to support component
> alpha on solid images, shouldn't it also be supported on gradients?
Interesting. As I read pixman (and the other ddx) they do not
distinguish between a solid pattern and 1x1R image, in particular the
misleading mask_is_solid(). As such, I thought that not enabling
component alpha along that path was a simple oversight. At the moment I
know of no users of solids, though I am contemplating enabling support
through cairo-xlib (though I hesitate since it requires ddx support in
order to not regress horribly).
As far as a consistent API goes that I would say we should respect
component alpha on a mask regardless of type. And I feel we should also
discuss adding a cairo_pattern_set_per_component_mask().
> In any case, as far as I know we have never supported this before, so
> I don't think it belongs on the 0.16 branch.
My bad, I really did think it was a trivial bug and not a deliberate
chris.wilson at intel.com
More information about the cairo