ref: bdac4cbe6fb77108a753be859fe73579c5cddc97
parent: d1b16325e27b766c27cc9f569c0aa334f1ecb732
author: Alexei Podtelezhnikov <apodtele@gmail.com>
date: Wed Jun 12 17:58:35 EDT 2019
Rendering considerations.
--- a/src/smooth/ftgrays.c
+++ b/src/smooth/ftgrays.c
@@ -646,6 +646,9 @@
dx = -dx;
}
+ /* the fractional part of y-delta is mod/dx. It is essential to */
+ /* keep track of its accumulation for accurate rendering. */
+ /* XXX: y-delta and x-delta below should be related. */
FT_DIV_MOD( TCoord, p, dx, delta, mod );
ras.area += (TArea)( ( fx1 + first ) * delta );
@@ -783,6 +786,8 @@
dy = -dy;
}
+ /* the fractional part of x-delta is mod/dy. It is essential to */
+ /* keep track of its accumulation for accurate rendering. */
FT_DIV_MOD( TCoord, p, dy, delta, mod );
x = ras.x + delta;