Hi, I think there is a bug in the PostScript backend, when trying to draw a polygon with zero linewidth. If you have a zero linewidth, the generated PostScript is along the lines of
173.31 49.274 m 305.066 57.999 l 173.533 46.684 l closepath gsave fill grestore whereas if there is a non-zero linewidth, you get 173.31 49.274 m 305.066 57.999 l 173.533 46.684 l closepath gsave fill grestore stroke The problem is that in the zero-linewidth case, the path is not cleared. Therefore, next time there is a 'stroke', that part of the path is stroked. In theory, this doesn't matter because its linewidth is zero, but the PostScript docs say not completely unambiguously that a zero-width line is as thin as the device allows. Ghostview, for instance, makes this noticeably non-zero-width and the result looks wrong. Besides, it seems cleaner to leave the current path in the same state (i.e., empty) in both cases. The below patch, against SVN head, seems to fix this. Ben. - - - - 8< - - - - --- SVN--backend_ps.py 2007-11-20 12:08:51.036996600 +0000 +++ backend_ps.py 2007-11-20 12:09:00.100300100 +0000 @@ -947,6 +947,9 @@ if self.linewidth > 0: write("stroke\n") + else: + write("newpath\n") + if cliprect: write("grestore\n") ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel