freetype-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Devel] Smooth rasterizer gives inconsistent results for different fill


From: Graham Asher
Subject: [Devel] Smooth rasterizer gives inconsistent results for different fill rules
Date: Mon, 15 Oct 2001 20:04:36 +0100

I have recently created by own version of the smooth rasterizer using the
code in ftgrays.c. I have not changed the algorithm in any way at all, so I
*think* that the following comment applies to FreeType2 as well as to my
code, and I'd be grateful for an explanation:

If I create an outline made of a (rough) circle inside another circle, both
clockwise, using conic splines, and rasterize it using even-odd fill, I get
very slightly different weights for some of the pixels, compared to what I
get if I make the inner circle anticlockwise and use the non-zero winding
rule. Specifically, I get weights on the pixels intersecting the inner
circle that are one greater when I use the non-zero winding rule: 0xE4, not
0xE3, for example.

This probably doesn't matter, and it has all the distingishing marks of an
inconsistency in rounding direction, but I would like to know if it is
intentional. I think that a rasterizer that describes itself as 'perfect'
(comment at the top of ftgrays.c: 'A new `perfect' anti-aliasing renderer')
should be at least consistent ;-) In theory the two ways of defining a shape
are equivalent and should yield the same results.

I can provide the data - points and resulting bitmaps - if necessary.

Graham Asher




reply via email to

[Prev in Thread] Current Thread [Next in Thread]