diff options
author | Behdad Esfahbod <behdad@behdad.org> | 2015-01-23 21:23:55 +0100 |
---|---|---|
committer | Werner Lemberg <wl@gnu.org> | 2015-01-23 21:23:55 +0100 |
commit | 264b5e46c0d166c11360eb6c29edf2c178bb87c7 (patch) | |
tree | b2530c5e33b2d01bc53922f3a3fb3c5fa345da6c /src | |
parent | 0bd564a94d5109397e578a0d62e8ca48b346e05f (diff) | |
download | freetype2-264b5e46c0d166c11360eb6c29edf2c178bb87c7.tar.gz |
[raster] Handle `FT_RASTER_FLAG_AA' correctly.
This fixes a breakage caused by the commit `[raster] Remove
5-level gray AA mode from monochrome rasterizer.'.
Problem reported by Markus Trippelsdorf <markus@trippelsdorf.de> and
octoploid <octoploid@yandex.com>.
* src/raster/ftraster.c (ft_black_render): Handle
`FT_RASTER_FLAG_AA'.
* src/raster/ftrend1.c (ft_raster1_render): Remove gray AA mode
remnants.
Diffstat (limited to 'src')
-rw-r--r-- | src/raster/ftraster.c | 3 | ||||
-rw-r--r-- | src/raster/ftrend1.c | 18 |
2 files changed, 5 insertions, 16 deletions
diff --git a/src/raster/ftraster.c b/src/raster/ftraster.c index 65ba454ad..fd0481b00 100644 --- a/src/raster/ftraster.c +++ b/src/raster/ftraster.c @@ -3108,6 +3108,9 @@ if ( params->flags & FT_RASTER_FLAG_DIRECT ) return FT_THROW( Unsupported ); + if ( params->flags & FT_RASTER_FLAG_AA ) + return FT_THROW( Unsupported ); + if ( !target_map ) return FT_THROW( Invalid ); diff --git a/src/raster/ftrend1.c b/src/raster/ftrend1.c index dc03b3424..718d632a9 100644 --- a/src/raster/ftrend1.c +++ b/src/raster/ftrend1.c @@ -187,19 +187,8 @@ slot->internal->flags &= ~FT_GLYPH_OWN_BITMAP; } - /* allocate new one, depends on pixel format */ - if ( !( mode & FT_RENDER_MODE_MONO ) ) - { - /* we pad to 32 bits, only for backwards compatibility with FT 1.x */ - pitch = FT_PAD_CEIL( width, 4 ); - bitmap->pixel_mode = FT_PIXEL_MODE_GRAY; - bitmap->num_grays = 256; - } - else - { - pitch = ( ( width + 15 ) >> 4 ) << 1; - bitmap->pixel_mode = FT_PIXEL_MODE_MONO; - } + pitch = ( ( width + 15 ) >> 4 ) << 1; + bitmap->pixel_mode = FT_PIXEL_MODE_MONO; bitmap->width = width; bitmap->rows = height; @@ -218,9 +207,6 @@ params.source = outline; params.flags = 0; - if ( bitmap->pixel_mode == FT_PIXEL_MODE_GRAY ) - params.flags |= FT_RASTER_FLAG_AA; - /* render outline into the bitmap */ error = render->raster_render( render->raster, ¶ms ); |