[cairo] Meta surface proposal
Bill Spitzak
spitzak at d2.com
Tue Feb 8 11:23:18 PST 2005
Owen Taylor wrote:
> I think you could get the effect that you are shooting for with a simple
> modification of the algorithm I sketched out ... rather than looking
> for intersections with all primitives just look for intersections with
> previously drawn primitives.
I think we are talking about the same thing.
> I do think that you want to draw the image fallbacks before vector
> primitives not after ... one reason that works better is you don't have
> to be precise in clipping the images you draw. If you draw the images
> afterwords, there is always the danger that you'll overwrite bits of
> the vector primitives, either erasing them or pixelizing them, depending
> on whether you draw the vector primitives to the image or not.
My gut impression is that if these images are too big it is not going to
annoy people. Most likely the images are going to be rectangles and this
is certain to overlap large amounts of the existing image.
> When you draw the images first, you can simply not include the vector
> primitives you draw natively in the image.
It seems you must include *earlier* vector primitives, since the result
of the unsupported operation is going to depend on them. Drawing the
primitives later is not going to produce the same result (if it did then
Cairo would have to produce the same image no matter what order things
were drawn in). I suppose you could somehow defer the primitives that
don't actually intersect the new primitive, but this sounds incredibly
difficult, and not worth it when the vast majority of unsupported
operations are going to be things like "screen composite this
rectangular bitmap".
More information about the cairo
mailing list