freetype-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[freetype2] master d062c54: [truetype] Fix previous commit.


From: Werner LEMBERG
Subject: [freetype2] master d062c54: [truetype] Fix previous commit.
Date: Mon, 18 Dec 2017 03:41:34 -0500 (EST)

branch: master
commit d062c54ce7f2c2bb98906f866755d214c4a73735
Author: Werner Lemberg <address@hidden>
Commit: Werner Lemberg <address@hidden>

    [truetype] Fix previous commit.
    
    * src/truetype/ttgload.c (TT_Process_Simple_Glyph): Correctly handle
    unhinted phantom points, which must be properly scaled.
---
 ChangeLog              | 7 +++++++
 src/truetype/ttgload.c | 9 ++++++---
 2 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 013216e..9cdb5e5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
 2017-12-18  Werner Lemberg  <address@hidden>
 
+       [truetype] Fix previous commit.
+
+       * src/truetype/ttgload.c (TT_Process_Simple_Glyph): Correctly handle
+       unhinted phantom points, which must be properly scaled.
+
+2017-12-18  Werner Lemberg  <address@hidden>
+
        [truetype] Don't apply HVAR and VVAR deltas twice (#52683).
 
        * src/truetype/ttgload.c (TT_Process_Simple_Glyph): Always adjust
diff --git a/src/truetype/ttgload.c b/src/truetype/ttgload.c
index 4b5af85..01f2f26 100644
--- a/src/truetype/ttgload.c
+++ b/src/truetype/ttgload.c
@@ -801,7 +801,7 @@
     {
       FT_TRACE1(( "TT_Hint_Glyph: too long instructions" ));
       FT_TRACE1(( " (0x%lx byte) is truncated\n",
-                 loader->glyph->control_len ));
+                  loader->glyph->control_len ));
     }
     n_ins = loader->glyph->control_len;
 
@@ -1041,7 +1041,8 @@
 
 #ifdef TT_CONFIG_OPTION_GX_VAR_SUPPORT
       /* if we have a HVAR table, `pp1' and/or `pp2' are already adjusted */
-      if ( !( loader->face->variation_support & TT_FACE_FLAG_VAR_HADVANCE ) )
+      if ( !( loader->face->variation_support & TT_FACE_FLAG_VAR_HADVANCE ) ||
+           !IS_HINTED( loader->load_flags )                                 )
 #endif
       {
         loader->pp1 = outline->points[n_points - 4];
@@ -1050,7 +1051,8 @@
 
 #ifdef TT_CONFIG_OPTION_GX_VAR_SUPPORT
       /* if we have a VVAR table, `pp3' and/or `pp4' are already adjusted */
-      if ( !( loader->face->variation_support & TT_FACE_FLAG_VAR_VADVANCE ) )
+      if ( !( loader->face->variation_support & TT_FACE_FLAG_VAR_VADVANCE ) ||
+           !IS_HINTED( loader->load_flags )                                 )
 #endif
       {
         loader->pp3 = outline->points[n_points - 2];
@@ -1418,6 +1420,7 @@
     TT_Driver driver = (TT_Driver)FT_FACE_DRIVER( loader->face );
 #endif
 
+
 #ifdef TT_SUPPORT_SUBPIXEL_HINTING_INFINALITY
     if ( driver->interpreter_version == TT_INTERPRETER_VERSION_38 )
     {



reply via email to

[Prev in Thread] Current Thread [Next in Thread]