Commit 92f5a047c9407f435f9e6f5a7370ae724aedea42

Werner Lemberg 2013-08-26T09:22:27

[autofit] Make `dummy' hinter work as expected. * src/autofit/afdummy.c (af_dummy_hints_init): Properly set scaling information. (af_dummy_hints_apply): Scale the glyphs.

diff --git a/ChangeLog b/ChangeLog
index d76c548..9c3693d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2013-08-26  Werner Lemberg  <wl@gnu.org>
+
+	[autofit] Make `dummy' hinter work as expected.
+
+	* src/autofit/afdummy.c (af_dummy_hints_init): Properly set scaling
+	information.
+	(af_dummy_hints_apply): Scale the glyphs.
+
 2013-08-25  Werner Lemberg  <wl@gnu.org>
 
 	[autofit] Make `cjk' module use blue stringsets.
diff --git a/src/autofit/afdummy.c b/src/autofit/afdummy.c
index b28e1cf..f2aaede 100644
--- a/src/autofit/afdummy.c
+++ b/src/autofit/afdummy.c
@@ -26,8 +26,13 @@
   af_dummy_hints_init( AF_GlyphHints     hints,
                        AF_ScriptMetrics  metrics )
   {
-    af_glyph_hints_rescale( hints,
-                            metrics );
+    af_glyph_hints_rescale( hints, metrics );
+
+    hints->x_scale = metrics->scaler.x_scale;
+    hints->y_scale = metrics->scaler.y_scale;
+    hints->x_delta = metrics->scaler.x_delta;
+    hints->y_delta = metrics->scaler.y_delta;
+
     return FT_Err_Ok;
   }
 
@@ -36,10 +41,14 @@
   af_dummy_hints_apply( AF_GlyphHints  hints,
                         FT_Outline*    outline )
   {
-    FT_UNUSED( hints );
-    FT_UNUSED( outline );
+    FT_Error  error;
 
-    return FT_Err_Ok;
+
+    error = af_glyph_hints_reload( hints, outline );
+    if ( !error )
+      af_glyph_hints_save( hints, outline );
+
+    return error;
   }