On Thu, Feb 05, 2009 at 02:02:32PM +0200, Jarno Kyttälä <[email protected]> wrote: > Ok. I found out what's causing this problem. Stroke to polygon > conversion doesn't (and cannot) work correctly for closed paths, becouse > of perturbation, and direct == comparison of path start and end > coordinates floating point values.
Yes, that's a problem indeed. libart's pertubation is a poor workaround for missing special-case handling in the intersector code. Replacing libart with a better working polygon library is in my queue. > I didn't want to touch the libart sources directly, so I commented out > the vpath perturbation at gfxpoly.c's strokeToPoly, and closed paths > seemed to render correctly with the PDFs I tested it with. You might run into problems for some more complex strokes w/o pertubation- but it depends on your PDF content. Greetings Matthias
