diff options
author | Anuj Verma <anujv@iitbhilai.ac.in> | 2020-08-16 09:06:59 +0530 |
---|---|---|
committer | Werner Lemberg <wl@gnu.org> | 2020-12-22 08:31:16 +0100 |
commit | 65bca9c9ff90593355a3cb8f4dab1530c7079dd3 (patch) | |
tree | 5ad6f0167c74abcd33dfadd3659a4e62b4c9c3ee | |
parent | 0d5f1dd37c056b4460a460d16fd1fbb06740e891 (diff) | |
download | freetype2-65bca9c9ff90593355a3cb8f4dab1530c7079dd3.tar.gz |
[base] Allow renderers of different formats.
* src/base/ftobjs.c (FT_Render_Glyph_Internal): Do not return if the
glyph's slot format is `FT_GLYPH_FORMAT_BITMAP`. The forthcoming
'bsdf' renderer will require bitmaps for processing.
* src/base/ftobjs.c (ft_add_renderer, ft_remove_renderer): Remove
renderer's glyph format check before adding and removing them. The
'bsdf' renderer will have a format `FT_GLYPH_FORMAT_BITMAP`.
-rw-r--r-- | ChangeLog | 12 | ||||
-rw-r--r-- | src/base/ftobjs.c | 9 |
2 files changed, 14 insertions, 7 deletions
@@ -1,3 +1,15 @@ +2020-08-16 Anuj Verma <anujv@iitbhilai.ac.in> + + [base] Allow renderers of different formats. + + * src/base/ftobjs.c (FT_Render_Glyph_Internal): Do not return if the + glyph's slot format is `FT_GLYPH_FORMAT_BITMAP`. The forthcoming + 'bsdf' renderer will require bitmaps for processing. + + * src/base/ftobjs.c (ft_add_renderer, ft_remove_renderer): Remove + renderer's glyph format check before adding and removing them. The + 'bsdf' renderer will have a format `FT_GLYPH_FORMAT_BITMAP`. + 2020-12-18 Tatsuyuki Ishi <ishitatsuyuki@gmail.com> [autofit] Fix double division in stem darkening. diff --git a/src/base/ftobjs.c b/src/base/ftobjs.c index 83351ad93..45662030c 100644 --- a/src/base/ftobjs.c +++ b/src/base/ftobjs.c @@ -4412,8 +4412,7 @@ render->glyph_format = clazz->glyph_format; /* allocate raster object if needed */ - if ( clazz->glyph_format == FT_GLYPH_FORMAT_OUTLINE && - clazz->raster_class->raster_new ) + if ( clazz->raster_class->raster_new ) { error = clazz->raster_class->raster_new( memory, &render->raster ); if ( error ) @@ -4460,8 +4459,7 @@ /* release raster object, if any */ - if ( render->clazz->glyph_format == FT_GLYPH_FORMAT_OUTLINE && - render->raster ) + if ( render->raster ) render->clazz->raster_class->raster_done( render->raster ); /* remove from list */ @@ -4556,9 +4554,6 @@ switch ( slot->format ) { - case FT_GLYPH_FORMAT_BITMAP: /* already a bitmap, don't do anything */ - break; - default: if ( slot->internal->load_flags & FT_LOAD_COLOR ) { |