[Poppler-bugs] [Bug 12185] Poppler does not correctly handle knockout groups

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Thu Sep 20 13:40:24 PDT 2007


http://bugs.freedesktop.org/show_bug.cgi?id=12185





------- Comment #7 from cworth at cworth.org  2007-09-20 13:41 PST -------
(In reply to comment #6)
> Adding support for this to the cairo backend will require some work. Supporting
> knockout groups requires tracking shape and opacity seperately. The cairo
> backend currently implements transparency groups using cairo_push/pop_group,
> but these do not help with tracking shape. However, support should be possible
> by tracking shape with an additional CAIRO_CONTENT_ALPHA surface.

I did try an experiment to implement something very much like the
example in plate 17 of the PDF reference, (a 2x2 matrix showing the
effects of knockout and isolated grouups). And yes, it will be a bit
tricky to do that completely. I think it will require two passes over
the group in some cases, as you suggest.

But, for the limited use of knockout groups that cairo is currently
emitting, you should be able to get by with something much
simpler. For example, just drawing all objects within the group with
CAIRO_OPERATOR_SOURCE should do the trick.

It might indeed be very worthwhile to start with just that, and then
later flesh out more complete support for all the combinations of
knockout and isolated groups as required.

Let me know if you have any more questions about that.

-Carl


-- 
Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.


More information about the Poppler-bugs mailing list