[cairo] CAIRO_OPERATOR_SOURCE not handled by backend

Sebastian Tusk sebastian.tusk at gmx.net
Tue Mar 20 11:18:13 PDT 2007


> The reason for the special behaviour is that when SOURCE or CLEAR are used
> with
> a mask in cairo that mask bounds the operation. Does your backend
> support this behaviour?

The special behaviour is triggered even without a mask. For my backend I would handle both cases myself.

> Either way _clip_and_composite should probably
> be changed to try to do the operation and the backends that don't
> support it should return STATUS_UNSUPPORTED. Only then, should cairo
> fallback to trying (src IN mask IN clip) ADD (dst OUT (mask IN clip)).

This means a change to all of the existing backends too? I will do that if there is no easier way.

> 
> > Shouldn't most backends be able to do the SOURCE operator more
> efficently than the current way?
> 
> XRender can not. I am not sure about the other backends, though I think
> Quartz (at least newer ones) might be able to do it more efficiently.

Is this an API limitation?

Sebastian

-- 
"Feel free" - 5 GB Mailbox, 50 FreeSMS/Monat ...
Jetzt GMX ProMail testen: www.gmx.net/de/go/mailfooter/promail-out


More information about the cairo mailing list