forked from minhngoc25a/freetype2
* src/type1/t1gload.c (T1_Load_Glyph), src/cff/cffgload.c
(cff_slot_load), src/cid/cidgload.c (cid_slot_load_glyph): Apply font matrix to advance also. * docs/CHANGES: Updated.
This commit is contained in:
parent
42284f98f2
commit
e8ff769c7f
|
@ -1,3 +1,10 @@
|
|||
2003-08-05 Werner Lemberg <wl@gnu.org>
|
||||
|
||||
* src/type1/t1gload.c (T1_Load_Glyph), src/cff/cffgload.c
|
||||
(cff_slot_load), src/cid/cidgload.c (cid_slot_load_glyph): Apply
|
||||
font matrix to advance also.
|
||||
* docs/CHANGES: Updated.
|
||||
|
||||
2003-07-26 Werner Lemberg <wl@gnu.org>
|
||||
|
||||
* builds/unix/configure.ac (version_info): Set to 9:4:3.
|
||||
|
|
|
@ -17,6 +17,9 @@ LATEST CHANGES BETWEEN 2.1.5 and 2.1.4
|
|||
- Numeric font dictionary entries for synthetic fonts are no longer
|
||||
overwritten.
|
||||
|
||||
- The font matrix wasn't applied to the advance width for Type1, CID,
|
||||
and CFF fonts.
|
||||
|
||||
- The test for the charset registry in BDF and PCF fonts is now
|
||||
case-insensitive.
|
||||
|
||||
|
|
|
@ -2411,6 +2411,7 @@
|
|||
{
|
||||
FT_BBox cbox;
|
||||
FT_Glyph_Metrics* metrics = &glyph->root.metrics;
|
||||
FT_Vector advance;
|
||||
|
||||
|
||||
/* copy the _unscaled_ advance width */
|
||||
|
@ -2440,6 +2441,14 @@
|
|||
font_offset.x,
|
||||
font_offset.y );
|
||||
|
||||
advance.x = metrics->horiAdvance;
|
||||
advance.y = metrics->vertAdvance;
|
||||
FT_Vector_Transform( &advance, &font_matrix );
|
||||
advance.x += font_offset.x;
|
||||
advance.y += font_offset.y;
|
||||
metrics->horiAdvance = advance.x;
|
||||
metrics->vertAdvance = advance.y;
|
||||
|
||||
if ( ( load_flags & FT_LOAD_NO_SCALE ) == 0 )
|
||||
{
|
||||
/* scale the outline and the metrics */
|
||||
|
|
|
@ -348,6 +348,7 @@
|
|||
{
|
||||
FT_BBox cbox;
|
||||
FT_Glyph_Metrics* metrics = &glyph->root.metrics;
|
||||
FT_Vector advance;
|
||||
|
||||
|
||||
/* copy the _unscaled_ advance width */
|
||||
|
@ -373,6 +374,14 @@
|
|||
font_offset.x,
|
||||
font_offset.y );
|
||||
|
||||
advance.x = metrics->horiAdvance;
|
||||
advance.y = metrics->vertAdvance;
|
||||
FT_Vector_Transform( &advance, &font_matrix );
|
||||
advance.x += font_offset.x;
|
||||
advance.y += font_offset.y;
|
||||
metrics->horiAdvance = advance.x;
|
||||
metrics->vertAdvance = advance.y;
|
||||
|
||||
if ( ( load_flags & FT_LOAD_NO_SCALE ) == 0 )
|
||||
{
|
||||
/* scale the outline and the metrics */
|
||||
|
|
|
@ -304,6 +304,7 @@
|
|||
{
|
||||
FT_BBox cbox;
|
||||
FT_Glyph_Metrics* metrics = &glyph->root.metrics;
|
||||
FT_Vector advance;
|
||||
|
||||
|
||||
/* copy the _unscaled_ advance width */
|
||||
|
@ -330,6 +331,14 @@
|
|||
FT_Outline_Translate( &glyph->root.outline,
|
||||
font_offset.x,
|
||||
font_offset.y );
|
||||
|
||||
advance.x = metrics->horiAdvance;
|
||||
advance.y = metrics->vertAdvance;
|
||||
FT_Vector_Transform( &advance, &font_matrix );
|
||||
advance.x += font_offset.x;
|
||||
advance.y += font_offset.y;
|
||||
metrics->horiAdvance = advance.x;
|
||||
metrics->vertAdvance = advance.y;
|
||||
#endif
|
||||
|
||||
if ( ( load_flags & FT_LOAD_NO_SCALE ) == 0 )
|
||||
|
|
Loading…
Reference in New Issue