[smooth] Attempt to mitigate bug #54019.

The robust rendering of estra large glyphs came with unbearable cost.
The old way of bisecting should fail but fail faster.

* src/smooth/ftgrays.c (gray_convert_glyph): Switch back to bisecting
in y-direction.
This commit is contained in:
Alexei Podtelezhnikov 2018-06-02 21:42:44 -04:00
parent 67994e8221
commit ae24803410
2 changed files with 14 additions and 4 deletions

View File

@ -1,3 +1,13 @@
2018-06-02 Alexei Podtelezhnikov <apodtele@gmail.com>
[smooth] Attempt to mitigate bug #54019.
The robust rendering of estra large glyphs came with unbearable cost.
The old way of bisecting should fail but fail faster.
* src/smooth/ftgrays.c (gray_convert_glyph): Switch back to bisecting
in y-direction.
2018-06-02 Werner Lemberg <wl@gnu.org>
* src/truetype/ttinterp.c (Ins_MIRP): Use SUB_LONG; avoid FT_ABS.

View File

@ -1767,8 +1767,8 @@ typedef ptrdiff_t FT_PtrDist;
ras.max_ey = FT_MIN( y, yMax );
band = bands;
band[1] = xMin;
band[0] = xMax;
band[1] = ras.min_ey;
band[0] = ras.max_ey;
do
{
@ -1780,8 +1780,8 @@ typedef ptrdiff_t FT_PtrDist;
ras.num_cells = 0;
ras.invalid = 1;
ras.min_ex = band[1];
ras.max_ex = band[0];
ras.min_ey = band[1];
ras.max_ey = band[0];
error = gray_convert_glyph_inner( RAS_VAR );