Commit a38af1f5 authored by Werner Lemberg's avatar Werner Lemberg
Browse files

* 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.
parent e7cd6e5f
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 )
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment