shithub: freetype+ttf2subf

Download patch

ref: dcb61e478566a67134a16195ca462730c1bb1030
parent: 699053ca759db89eff168713ca86163d76fd5b17
author: David Turner <[email protected]>
date: Fri Jul 5 11:54:26 EDT 2002

* src/pfr/pfrobjs.c (pfr_slot_load): fixed a small bug that returned
    incorrect advances when the outline resolution was different from the
    metrics resolution

    * src/autohint/ahhint.c: removing compiler warnings

    * src/autohint/ahglyph.c: slight improvements to the serif detection
    code. More work is needed though..

git/fs: mount .git/fs: mount/attach disallowed
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2002-07-04  David Turner  <[email protected]>
+
+    * src/pfr/pfrobjs.c (pfr_slot_load): fixed a small bug that returned
+    incorrect advances when the outline resolution was different from the
+    metrics resolution
+
+    * src/autohint/ahhint.c: removing compiler warnings
+    
+    * src/autohint/ahglyph.c: slight improvements to the serif detection
+    code. More work is needed though..
+
 2002-07-03  David Turner  <[email protected]>
 
     * src/autohint/ahglobal.c, src/autohint/ahtypes.h, src/autohint/ahhint.c:
--- a/src/autohint/ahglyph.c
+++ b/src/autohint/ahglyph.c
@@ -984,19 +984,19 @@
                 max = seg2->max_coord;
 
               len   = max - min;
-              dist  = seg2->pos - seg1->pos;
-              if ( dist < 0 )
-                dist = -dist;
-
-              if ( len < 8 )
-                score = 300*8 + dist - len*3;
-              else
-                score = dist + 300/len;
-
-              if ( score < best_score )
+              if ( len >= 8 )
               {
-                best_score   = score;
-                best_segment = seg2;
+                dist  = seg2->pos - seg1->pos;
+                if ( dist < 0 )
+                  dist = -dist;
+  
+                score = dist + 3000/len;
+  
+                if ( score < best_score )
+                {
+                  best_score   = score;
+                  best_segment = seg2;
+                }
               }
             }
           }
--- a/src/autohint/ahhint.c
+++ b/src/autohint/ahhint.c
@@ -40,7 +40,7 @@
   /*************************************************************************/
   /*************************************************************************/
 
-
+#if 0
   /* snap a given width in scaled coordinates to one of the */
   /* current standard widths                                */
   static FT_Pos
@@ -86,8 +86,8 @@
 
     return width;
   }
+#endif
 
-
   /* compute the snapped width of a given stem */
   static FT_Pos
   ah_compute_stem_width( AH_Hinter*  hinter,
@@ -364,7 +364,6 @@
 
         {
           FT_Bool  min = 0;
-          FT_Pos   delta;
 
           if ( !anchor )
           {
--- a/src/pfr/pfrobjs.c
+++ b/src/pfr/pfrobjs.c
@@ -277,9 +277,9 @@
         advance = FT_MulDiv( advance, em_outline, em_metrics );
 
       if ( face->phy_font.flags & PFR_PHY_VERTICAL )
-        metrics->vertAdvance = gchar->advance;
+        metrics->vertAdvance = advance;
       else
-        metrics->horiAdvance = gchar->advance;
+        metrics->horiAdvance = advance;
 
       slot->root.linearHoriAdvance = metrics->horiAdvance;
       slot->root.linearVertAdvance = metrics->vertAdvance;