shithub: freetype+ttf2subf

Download patch

ref: 3c40d73d2cbe7b6e9e8e41542bb0e5bc8064a485
parent: 8b6db86b0548fc2906ded57a4a5ef240e6d6179e
author: David Turner <[email protected]>
date: Sun Aug 17 18:31:23 EDT 2003

* Jamfile: adding the "refdoc" target to the Jamfile in order to
        build the API Reference in "docs/reference" automatically

        * include/freetype/t1tables.h, src/cid/cidtoken.h, src/type1/t1tokens.h,
        src/type42/t42parse.c:

        re-setting the types of "italic_angle", "underline_position" and
        "underline_thickness" to their previous values (i.e. long, short and
        ushort), in order to avoid breaking binary compatibility

        * include/freetype/ttunpath.h: fixing documentation comment

git/fs: mount .git/fs: mount/attach disallowed
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,17 @@
 2003-08-18  David Turner  <[email protected]>
 
+        * Jamfile: adding the "refdoc" target to the Jamfile in order to
+        build the API Reference in "docs/reference" automatically
+
+        * include/freetype/t1tables.h, src/cid/cidtoken.h, src/type1/t1tokens.h,
+        src/type42/t42parse.c:
+
+        re-setting the types of "italic_angle", "underline_position" and
+        "underline_thickness" to their previous values (i.e. long, short and
+        ushort), in order to avoid breaking binary compatibility
+
+        * include/freetype/ttunpath.h: fixing documentation comment
+
         * include/freetype/config/ftoption.h, devel/ftoption.h,
         include/freetype/internal/ftobjs.h, include/freetype/internal/tttypes.h,
         src/truetype/ttinterp.c, src/truetype/ttobjs.c, src/truetype/ttobjs.h:
--- a/Jamfile
+++ b/Jamfile
@@ -90,6 +90,18 @@
 
 FT2_SRC      = [ FT2_SubDir $(FT2_SRC_DIR) ] ;
 
+# Location of API Reference Documentation
+#
+if $(DOC_DIR)
+{
+  DOC_DIR = $(DOCDIR:T) ;
+}
+else
+{
+  DOC_DIR = docs/reference ;
+}
+
+
 # Only used by FreeType developers.
 #
 if $(DEBUG_HINTER)
@@ -131,5 +143,13 @@
 {
   SubInclude FT2_TOP tests ;
 }
+
+actions RefDoc
+{
+  python $(FT2_SRC)/tools/docmaker/docmaker.py --prefix=ft2 --title=FreeType-2.1.5 --output=$(DOC_DIR)  $(FT2_INCLUDE)/freetype/*.h  $(FT2_INCLUDE)/freetype/config/*.h  $(FT2_INCLUDE)/freetype/cache/*.h
+}
+
+RefDoc  refdoc ;
+
 
 # end of top Jamfile
--- a/include/freetype/t1tables.h
+++ b/include/freetype/t1tables.h
@@ -67,10 +67,10 @@
     FT_String*  full_name;
     FT_String*  family_name;
     FT_String*  weight;
-    FT_Fixed    italic_angle;
+    FT_Long     italic_angle;
     FT_Bool     is_fixed_pitch;
-    FT_Fixed    underline_position;
-    FT_Fixed    underline_thickness;
+    FT_Short    underline_position;
+    FT_UShort   underline_thickness;
 
   } PS_FontInfoRec, *PS_FontInfo;
 
--- a/include/freetype/ttunpat.h
+++ b/include/freetype/ttunpat.h
@@ -42,6 +42,7 @@
   */
 #define FT_PARAM_TAG_UNPATENTED_HINTING  FT_MAKE_TAG( 'u', 'n', 'p', 'a' )
 
+ /* */
 
 FT_END_HEADER
 
--- a/src/cid/cidtoken.h
+++ b/src/cid/cidtoken.h
@@ -44,10 +44,10 @@
   T1_FIELD_STRING( "FullName", full_name )
   T1_FIELD_STRING( "FamilyName", family_name )
   T1_FIELD_STRING( "Weight", weight )
-  T1_FIELD_FIXED ( "ItalicAngle", italic_angle )
+  T1_FIELD_NUM   ( "ItalicAngle", italic_angle )
   T1_FIELD_BOOL  ( "isFixedPitch", is_fixed_pitch )
-  T1_FIELD_FIXED ( "UnderlinePosition", underline_position )
-  T1_FIELD_FIXED ( "UnderlineThickness", underline_thickness )
+  T1_FIELD_NUM   ( "UnderlinePosition", underline_position )
+  T1_FIELD_NUM   ( "UnderlineThickness", underline_thickness )
 
 
 #undef  FT_STRUCTURE
@@ -98,6 +98,6 @@
 #define T1CODE        T1_FIELD_LOCATION_BBOX
 
   T1_FIELD_BBOX( "FontBBox", xMin )
-  
+
 
 /* END */
--- a/src/type1/t1tokens.h
+++ b/src/type1/t1tokens.h
@@ -28,10 +28,10 @@
   T1_FIELD_STRING( "Weight", weight )
 
   /* we use pointers to detect modifications made by synthetic fonts */
-  T1_FIELD_FIXED ( "ItalicAngle", italic_angle )
+  T1_FIELD_NUM   ( "ItalicAngle", italic_angle )
   T1_FIELD_BOOL  ( "isFixedPitch", is_fixed_pitch )
-  T1_FIELD_FIXED ( "UnderlinePosition", underline_position )
-  T1_FIELD_FIXED ( "UnderlineThickness", underline_thickness )
+  T1_FIELD_NUM   ( "UnderlinePosition", underline_position )
+  T1_FIELD_NUM   ( "UnderlineThickness", underline_thickness )
 
 
 #undef  FT_STRUCTURE
--- a/src/type42/t42parse.c
+++ b/src/type42/t42parse.c
@@ -39,11 +39,11 @@
   static void
   t42_parse_encoding( T42_Face    face,
                       T42_Loader  loader );
-                      
+
   static void
   t42_parse_charstrings( T42_Face    face,
                          T42_Loader  loader );
-                         
+
   static void
   t42_parse_sfnts( T42_Face    face,
                    T42_Loader  loader );
@@ -62,10 +62,10 @@
     T1_FIELD_STRING( "FullName",           full_name )
     T1_FIELD_STRING( "FamilyName",         family_name )
     T1_FIELD_STRING( "Weight",             weight )
-    T1_FIELD_FIXED ( "ItalicAngle",        italic_angle )
+    T1_FIELD_NUM   ( "ItalicAngle",        italic_angle )
     T1_FIELD_BOOL  ( "isFixedPitch",       is_fixed_pitch )
-    T1_FIELD_FIXED ( "UnderlinePosition",  underline_position )
-    T1_FIELD_FIXED ( "UnderlineThickness", underline_thickness )
+    T1_FIELD_NUM   ( "UnderlinePosition",  underline_position )
+    T1_FIELD_NUM   ( "UnderlineThickness", underline_thickness )
 
 #undef  FT_STRUCTURE
 #define FT_STRUCTURE  T1_FontRec
@@ -460,7 +460,7 @@
   t42_hexval( FT_Byte  v )
   {
     FT_UInt  d;
-    
+
     d = (FT_UInt)( v - 'A' );
     if ( d < 6 )
     {
@@ -467,7 +467,7 @@
       d += 10;
       goto Exit;
     }
-      
+
     d = (FT_UInt)( v - 'a' );
     if ( d < 6 )
     {
@@ -474,14 +474,14 @@
       d += 10;
       goto Exit;
     }
-      
+
     d = (FT_UInt)( v - '0' );
     if ( d < 10 )
       goto Exit;
-      
+
     d = 0;
- 
-  Exit:         
+
+  Exit:
     return d;
   }
 
@@ -613,7 +613,7 @@
           for ( i = 0; i < num_tables; i++ )
           {
             FT_Byte*  p = face->ttf_data + 12 + 16*i + 12;
-            
+
             len = FT_PEEK_ULONG( p );
 
             /* Pad to a 4-byte boundary length */
@@ -816,15 +816,15 @@
     T42_Parser  parser     = &loader->parser;
     FT_Byte*    cur        = base;
     FT_Byte*    limit      = cur + size;
-    FT_UInt     n_keywords = (FT_UInt)( sizeof ( t42_keywords ) / 
+    FT_UInt     n_keywords = (FT_UInt)( sizeof ( t42_keywords ) /
                                         sizeof ( t42_keywords[0] ) );
-                                        
+
     FT_Byte     keyword_flags[T42_KEYWORD_COUNT];
 
     {
       FT_UInt  n;
-      
 
+
       for ( n = 0; n < T42_KEYWORD_COUNT; n++ )
         keyword_flags[n] = 0;
     }
@@ -900,7 +900,7 @@
               /* we found it -- run the parsing callback! */
               parser->root.cursor = cur2;
               T1_Skip_Spaces( parser );
-             
+
               /* only record the first instance of each field/keyword */
               /* to deal with synthetic fonts correctly               */
               if ( keyword_flags[i] == 0 )
@@ -912,7 +912,7 @@
                   return parser->root.error;
               }
               keyword_flags[i] = 1;
-              
+
               cur = parser->root.cursor;
               break;
             }