shithub: freetype+ttf2subf

Download patch

ref: 6d79f214e14f8b6d6e9c79cec491383223b37faf
parent: d898aeddbefdf3ab84a2c89dd04bc9862f351204
author: David Turner <[email protected]>
date: Fri Sep 1 10:09:35 EDT 2006

* src/truetype/ttobjs.c: updated the TrueType loader to recognize
        a few fonts that require the automatic unpatented loader

git/fs: mount .git/fs: mount/attach disallowed
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2006-09-01  David Turner  <[email protected]>
+
+        * src/truetype/ttobjs.c: updated the TrueType loader to recognize
+        a few fonts that require the automatic unpatented loader
+
 2006-08-29  Dr. Werner Fink  <[email protected]>
 
 	* configure: Make it possible to handle configure options which
--- a/src/truetype/ttobjs.c
+++ b/src/truetype/ttobjs.c
@@ -266,9 +266,28 @@
     */
     if ( !face->unpatented_hinting )
     {
-      /* XXX: TODO: */
-      if ( strcmp( ttface->family_name, "What?" ) == 0 )
-        face->unpatented_hinting = 1;
+      static const char* const  trick_names[] =
+      {
+        "DFKaiSho-SB",     /* dfkaisb.ttf */
+        "DFKai-SB",        /* kaiu.ttf */
+        "HuaTianSongTi?",  /* htst3.ttf */
+        "MingLiU",         /* mingliu.ttf & mingliu.ttc */
+        "PMingLiU",        /* mingliu.ttc */
+        NULL
+      };
+      int   nn;
+
+     /* note that we only check the face name at the moment, it might
+      * be worthy to do more checks for a few special cases
+      */
+      for ( nn = 0; trick_names[nn] != NULL; nn++ )
+      {
+        if ( ft_strcmp( ttface->family_name, trick_names[nn] ) == 0 )
+        {
+          face->unpatented_hinting = 1;
+          break;
+        }
+      }
     }
 
     ttface->internal->force_autohint = !face->unpatented_hinting;