[cairo] Clip region problems

Keith Packard keithp at keithp.com
Wed May 18 13:29:30 PDT 2005


On Wed, 2005-05-18 at 15:49 -0400, Owen Taylor wrote:

> I think this is clearly the semantic we want. The problem is that 
> libpixman and RENDER don't work that way. 

I think the right answer is 'it depends'.  Render, by creating an
intermediate object (Picture) permits either semantic by allowing
multiple Pictures for a single Drawable.

> For A => B we temporarily clear the clip on A when using it as a source.

Or, we can simply define the backend semantics to not clip the source,
the xlib Render backend would then need to create separate picture
objects for source and destination operands.

A more complete solution would include a clip region in the pattern
object.  It would, of course, be nice to share these somehow saving
ourselves a picture object and ancilary region.

> But for A => A we need to "fork" the input surface when operating from a
> surface to itself with a clip. (Create another Picture really.)

I guess the question is how the PDF, Quartz and Win32 backends might
deal with separate input/output clip regions.  If they already have this
ability, then we're all set.  Otherwise, we should consider what
reasonable subset of the complete functionality is efficiently
supportable.

-keith

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : http://lists.freedesktop.org/archives/cairo/attachments/20050518/297d1074/attachment.pgp


More information about the cairo mailing list