mirror of https://github.com/freetype/freetype
* src/truetype/ttinterp. (Ins_SCANTYPE): Don't check rendering mode.
* src/raster/ftraster.c (Render_Glyph, Render_Gray_Glyph, Draw_Sweep): No-dropout mode is value 2, not value 0. (Draw_Sweep): Really skip dropout handling for no-dropout mode.
This commit is contained in:
parent
5563bea093
commit
ce8853af81
|
@ -1,3 +1,11 @@
|
|||
2008-06-24 Werner Lemberg <wl@gnu.org>
|
||||
|
||||
* src/truetype/ttinterp. (Ins_SCANTYPE): Don't check rendering mode.
|
||||
|
||||
* src/raster/ftraster.c (Render_Glyph, Render_Gray_Glyph,
|
||||
Draw_Sweep): No-dropout mode is value 2, not value 0.
|
||||
(Draw_Sweep): Really skip dropout handling for no-dropout mode.
|
||||
|
||||
2008-06-24 Werner Lemberg <wl@gnu.org>
|
||||
|
||||
* src/psaux/psobjs.c (t1_builder_close_contour): Don't add contour
|
||||
|
|
|
@ -2893,17 +2893,19 @@ static const char count_table[256] =
|
|||
e1 = FLOOR( x1 );
|
||||
e2 = CEILING( x2 );
|
||||
|
||||
if ( ras.dropOutControl != 0 &&
|
||||
( e1 > e2 || e2 == e1 + ras.precision ) )
|
||||
if ( e1 > e2 || e2 == e1 + ras.precision )
|
||||
{
|
||||
/* a drop out was detected */
|
||||
if ( ras.dropOutControl != 2 )
|
||||
{
|
||||
/* a drop out was detected */
|
||||
|
||||
P_Left ->X = x1;
|
||||
P_Right->X = x2;
|
||||
P_Left ->X = x1;
|
||||
P_Right->X = x2;
|
||||
|
||||
/* mark profile for drop-out processing */
|
||||
P_Left->countL = 1;
|
||||
dropouts++;
|
||||
/* mark profile for drop-out processing */
|
||||
P_Left->countL = 1;
|
||||
dropouts++;
|
||||
}
|
||||
|
||||
goto Skip_To_Next;
|
||||
}
|
||||
|
@ -3123,7 +3125,7 @@ static const char count_table[256] =
|
|||
return error;
|
||||
|
||||
/* Horizontal Sweep */
|
||||
if ( ras.second_pass && ras.dropOutControl != 0 )
|
||||
if ( ras.second_pass && ras.dropOutControl != 2 )
|
||||
{
|
||||
ras.Proc_Sweep_Init = Horizontal_Sweep_Init;
|
||||
ras.Proc_Sweep_Span = Horizontal_Sweep_Span;
|
||||
|
@ -3208,7 +3210,7 @@ static const char count_table[256] =
|
|||
return error;
|
||||
|
||||
/* Horizontal Sweep */
|
||||
if ( ras.second_pass && ras.dropOutControl != 0 )
|
||||
if ( ras.second_pass && ras.dropOutControl != 2 )
|
||||
{
|
||||
ras.Proc_Sweep_Init = Horizontal_Sweep_Init;
|
||||
ras.Proc_Sweep_Span = Horizontal_Gray_Sweep_Span;
|
||||
|
|
|
@ -5121,16 +5121,8 @@
|
|||
static void
|
||||
Ins_SCANTYPE( INS_ARG )
|
||||
{
|
||||
/* for compatibility with future enhancements, */
|
||||
/* we must ignore new modes */
|
||||
|
||||
if ( args[0] >= 0 && args[0] <= 5 )
|
||||
{
|
||||
if ( args[0] == 3 )
|
||||
args[0] = 2;
|
||||
|
||||
if ( args[0] >= 0 )
|
||||
CUR.GS.scan_type = (FT_Int)args[0];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue