[smooth] Improve contour start (take 2).

* src/smooth/ftgrays.c (gray_move_to): Call `gray_set_cell' directly
instead of...
(gray_start_cell): ... this function, which is removed.
(gray_convert_glyph): Make initial y-coordinate invalid.
This commit is contained in:
Alexei Podtelezhnikov 2016-09-06 23:24:17 -04:00
parent ebbb8b2e19
commit 44b172e883
2 changed files with 11 additions and 29 deletions

View File

@ -1,3 +1,12 @@
2016-09-06 Alexei Podtelezhnikov <apodtele@gmail.com>
[smooth] Improve contour start (take 2).
* src/smooth/ftgrays.c (gray_move_to): Call `gray_set_cell' directly
instead of...
(gray_start_cell): ... this function, which is removed.
(gray_convert_glyph): Make initial y-coordinate invalid.
2016-09-06 Werner Lemberg <wl@gnu.org>
[type1] MM fonts support exactly zero named instances (#48748).

View File

@ -605,29 +605,6 @@ typedef ptrdiff_t FT_PtrDist;
}
/*************************************************************************/
/* */
/* Start a new contour at a given cell. */
/* */
static void
gray_start_cell( RAS_ARG_ TCoord ex,
TCoord ey )
{
if ( ex > ras.max_ex )
ex = ras.max_ex;
if ( ex < ras.min_ex )
ex = ras.min_ex - 1;
ras.area = 0;
ras.cover = 0;
ras.ex = ex - ras.min_ex;
ras.ey = ey - ras.min_ey;
ras.invalid = 0;
gray_set_cell( RAS_VAR_ ex, ey );
}
#ifndef FT_LONG64
/*************************************************************************/
@ -1224,15 +1201,11 @@ typedef ptrdiff_t FT_PtrDist;
TPos x, y;
/* record current cell, if any */
if ( !ras.invalid )
gray_record_cell( RAS_VAR );
/* start to a new position */
x = UPSCALE( to->x );
y = UPSCALE( to->y );
gray_start_cell( RAS_VAR_ TRUNC( x ), TRUNC( y ) );
gray_set_cell( RAS_VAR_ TRUNC( x ), TRUNC( y ) );
ras.x = x;
ras.y = y;
@ -1852,7 +1825,7 @@ typedef ptrdiff_t FT_PtrDist;
ras.num_cells = 0;
ras.invalid = 1;
ras.min_ey = band[1];
ras.max_ey = band[0];
ras.max_ey = ras.ey = band[0];
ras.count_ey = width;
error = gray_convert_glyph_inner( RAS_VAR );