shithub: freetype+ttf2subf

Download patch

ref: 0657a8ac949d0e33deb64b31252f247b9e00235c
parent: 0bb4a0f93a8a241a3e499f62292b730fb340c339
author: Werner Lemberg <[email protected]>
date: Wed Jun 19 15:43:15 EDT 2002

* src/type42/t42objs.c (t42_check_size_change): Removed.
(T42_Size_SetChars, T42_Size_SetPixels): Use FT_Activate_Size
instead.
(T42_GlyphSlot_Load): Remove call to t42_check_size_change.

git/fs: mount .git/fs: mount/attach disallowed
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2002-06-18  Roberto Alameda  <[email protected]>.
+
+	* src/type42/t42objs.c (t42_check_size_change): Removed.
+	(T42_Size_SetChars, T42_Size_SetPixels): Use FT_Activate_Size
+	instead.
+	(T42_GlyphSlot_Load): Remove call to t42_check_size_change.
+
 2002-06-18  Detlef W�rkner  <[email protected]>
 
 	* src/psaux/t1cmap.c (t1_cmap_custom_char_index,
--- a/src/type42/t42drivr.c
+++ b/src/type42/t42drivr.c
@@ -15,6 +15,27 @@
 /***************************************************************************/
 
 
+  /*************************************************************************/
+  /*                                                                       */
+  /* This driver implements Type42 fonts as described in the               */
+  /* Technical Note #5012 from Adobe, with these limitations:              */
+  /*                                                                       */
+  /* 1) CID Fonts are not currently supported.                             */
+  /* 2) Incremental fonts making use of the GlyphDirectory keyword         */
+  /*    will be loaded, but the rendering will be using the TrueType       */
+  /*    tables.                                                            */
+  /* 3) The sfnts array is expected to be ASCII, not binary.               */
+  /* 4) As for Type1 fonts, CDevProc is not supported.                     */
+  /* 5) The Metrics dictionary is not supported.                           */
+  /* 6) AFM metrics are not supported.                                     */
+  /*                                                                       */
+  /* In other words, this driver supports Type42 fonts derived from        */
+  /* TrueType fonts in a non-CID manner, as done by usual conversion       */
+  /* programs.                                                             */
+  /*                                                                       */
+  /*************************************************************************/
+
+
 #include "t42drivr.h"
 #include "t42objs.h"
 #include "t42error.h"
--- a/src/type42/t42objs.c
+++ b/src/type42/t42objs.c
@@ -705,18 +705,7 @@
   }
 
 
-  static void
-  t42_check_size_change( FT_Face  face )
-  {
-    FT_Face  tt_face = ((T42_Face)face)->ttf_face;
-    FT_Size  tt_size = ((T42_Size)face->size)->ttsize;
-    
 
-    if ( tt_face->size != tt_size )
-      FT_Activate_Size( tt_size );
-  }
-
-
   FT_LOCAL_DEF( FT_Error )
   T42_Size_SetChars( T42_Size    size,
                      FT_F26Dot6  char_width,
@@ -728,7 +717,7 @@
     T42_Face  t42face = (T42_Face)face;
 
 
-    t42_check_size_change( t42face->ttf_face );
+    FT_Activate_Size(size->ttsize);
     
     return FT_Set_Char_Size( t42face->ttf_face,
                              char_width,
@@ -747,7 +736,7 @@
     T42_Face  t42face = (T42_Face)face;
 
 
-    t42_check_size_change( t42face->ttf_face );
+    FT_Activate_Size(size->ttsize);
     
     return FT_Set_Pixel_Sizes( t42face->ttf_face,
                                pixel_width,
@@ -796,11 +785,8 @@
     FT_Error         error;
     T42_GlyphSlot    t42slot = (T42_GlyphSlot)glyph;
     T42_Size         t42size = (T42_Size)size;
-    FT_Face          tt_face = ((T42_Face) glyph->face)->ttf_face;
     FT_Driver_Class  ttclazz = ((T42_Driver)glyph->face->driver)->ttclazz;
 
-
-    t42_check_size_change( tt_face );
 
     ft_glyphslot_clear( t42slot->ttslot );
     error = ttclazz->load_glyph( t42slot->ttslot,