[psaux] Fix CFF advance widths. (#52466)
Glyph advance widths were being written to the new `PS_Decoder' but not saved to the underlying format specific decoder. This caused pure CFF fonts to have bad advance width. * include/freetype/internal/psaux.h (PS_Decoder): Change `glyph_width' field to pointer. Remove unused fields. * src/psaux/psobjs.c (ps_decoder_init): Change `glyph_width' from copy to reference. Remove unused. * src/psaux/psft.c (cf2_setGlyphWidth): Update code.
This commit is contained in:
parent
954710ddd7
commit
b9bd2d14e2
16
ChangeLog
16
ChangeLog
@ -1,3 +1,19 @@
|
||||
2017-11-22 Ewald Hew <ewaldhew@gmail.com>
|
||||
|
||||
[psaux] Fix CFF advance widths. (#52466)
|
||||
|
||||
Glyph advance widths were being written to the new `PS_Decoder' but not
|
||||
saved to the underlying format specific decoder. This caused pure CFF
|
||||
fonts to have bad advance width.
|
||||
|
||||
* include/freetype/internal/psaux.h (PS_Decoder): Change `glyph_width'
|
||||
field to pointer.
|
||||
Remove unused fields.
|
||||
* src/psaux/psobjs.c (ps_decoder_init): Change `glyph_width' from copy
|
||||
to reference.
|
||||
Remove unused.
|
||||
* src/psaux/psft.c (cf2_setGlyphWidth): Update code.
|
||||
|
||||
2017-11-15 Vlad Tsyrklevich <vtsyrklevich@google.com>
|
||||
|
||||
* include/freetype/ftrender.h: Fix `FT_Renderer_RenderFunc' type.
|
||||
|
@ -614,10 +614,7 @@ FT_BEGIN_HEADER
|
||||
CFF_SubFont current_subfont; /* for current glyph_index */
|
||||
FT_Generic* cf2_instance;
|
||||
|
||||
FT_Pos glyph_width;
|
||||
FT_Pos nominal_width;
|
||||
|
||||
FT_Bool read_width;
|
||||
FT_Pos* glyph_width;
|
||||
FT_Bool width_only;
|
||||
FT_Int num_hints;
|
||||
|
||||
|
@ -95,7 +95,7 @@
|
||||
|
||||
FT_ASSERT( decoder );
|
||||
|
||||
decoder->glyph_width = cf2_fixedToInt( width );
|
||||
*decoder->glyph_width = cf2_fixedToInt( width );
|
||||
}
|
||||
|
||||
|
||||
|
@ -2407,8 +2407,7 @@
|
||||
ps_decoder->locals = cff_decoder->locals;
|
||||
ps_decoder->locals_bias = cff_decoder->locals_bias;
|
||||
|
||||
ps_decoder->glyph_width = cff_decoder->glyph_width;
|
||||
ps_decoder->nominal_width = cff_decoder->nominal_width;
|
||||
ps_decoder->glyph_width = &cff_decoder->glyph_width;
|
||||
ps_decoder->width_only = cff_decoder->width_only;
|
||||
|
||||
ps_decoder->hint_mode = cff_decoder->hint_mode;
|
||||
|
Loading…
Reference in New Issue
Block a user