shithub: freetype+ttf2subf

Download patch

ref: 2acb963baf4a37f3d388ae6dd20aa83832d70d74
parent: 9a8898810d4290ee2b0f080f9fee92a0f7b0be72
author: Werner Lemberg <[email protected]>
date: Wed Apr 23 02:47:12 EDT 2003

Cleanups.

git/fs: mount .git/fs: mount/attach disallowed
--- a/ChangeLog
+++ b/ChangeLog
@@ -209,14 +209,17 @@
 
 2003-02-13  Graham Asher  <[email protected]>
 
-	* include/freetype/ftincrem.h, src/cff/cffgload.c,
-	src/cid/cidgload.c, src/truetype/ttgload.c, src/type1/t1gload.c
-	[FT_CONFIG_OPTION_INCREMENTAL]: Changed the incremental loading
-	interface in a way that makes it simpler and allows glyph metrics to
-	be changed (e.g., by adding a constant, as required by CFF fonts)
-	rather than just overridden.  This was required to make the
-	GhsotScript-to-FreeType bridge work.
+	Changed the incremental loading interface in a way that makes it
+	simpler and allows glyph metrics to be changed (e.g., by adding a
+	constant, as required by CFF fonts) rather than just overridden. 
+	This was required to make the GhostScript-to-FreeType bridge work.
 
+	* src/cff/cffgload.c (cff_slot_load) [FT_CONFIG_OPTION_INCREMENTAL]:
+	Allow metrics to be overridden.
+	* src/cid/cidgload.c, src/truetype/ttgload.c, src/type1/t1gload.c
+	[FT_CONFIG_OPTION_INCREMENTAL]:
+	* include/freetype/ftincrem.h: Updated.
+
 2003-01-31  David Turner  <[email protected]>
 
 	* docs/CHANGES, docs/VERSION.DLL, docs/TODO: Updating documentation
@@ -513,10 +516,10 @@
 
 2002-11-23  David Turner  <[email protected]>
 
-	* src/cff/cffload.c (cff_charser_load): Modified charset loader to
-	accept pre-defined charsets, even when the font contains fewer
-	glyphs.  Also enforced more checks to ensure that we never overflow
-	the character codes array in the encoding.
+	* src/cff/cffload.c (cff_charset_load, cff_encoding_load): Modified
+	charset loader to accept pre-defined charsets, even when the font
+	contains fewer glyphs.  Also enforced more checks to ensure that we
+	never overflow the character codes array in the encoding.
 
 2002-11-22  Antoine Leca  <[email protected]>
 
--- a/src/bdf/bdfdrivr.c
+++ b/src/bdf/bdfdrivr.c
@@ -2,7 +2,7 @@
 
     FreeType font driver for bdf files
 
-    Copyright (C) 2001-2002 by
+    Copyright (C) 2001, 2002, 2003 by
     Francesco Zappa Nardelli
 
 Permission is hereby granted, free of charge, to any person obtaining a copy
@@ -637,6 +637,7 @@
   {
     bdf_property_t*  prop;
 
+
     FT_ASSERT( face && face->bdffont );
 
     prop = bdf_get_font_property( face->bdffont, (char*)prop_name );
@@ -644,26 +645,27 @@
     {
       switch ( prop->format )
       {
-        case BDF_ATOM:
-          aproperty->type   = BDF_PROPERTY_TYPE_ATOM;
-          aproperty->u.atom = prop->value.atom;
-          break;
+      case BDF_ATOM:
+        aproperty->type   = BDF_PROPERTY_TYPE_ATOM;
+        aproperty->u.atom = prop->value.atom;
+        break;
 
-        case BDF_INTEGER:
-          aproperty->type      = BDF_PROPERTY_TYPE_INTEGER;
-          aproperty->u.integer = prop->value.int32;
-          break;
+      case BDF_INTEGER:
+        aproperty->type      = BDF_PROPERTY_TYPE_INTEGER;
+        aproperty->u.integer = prop->value.int32;
+        break;
 
-        case BDF_CARDINAL:
-          aproperty->type       = BDF_PROPERTY_TYPE_CARDINAL;
-          aproperty->u.cardinal = prop->value.card32;
-          break;
+      case BDF_CARDINAL:
+        aproperty->type       = BDF_PROPERTY_TYPE_CARDINAL;
+        aproperty->u.cardinal = prop->value.card32;
+        break;
 
-        default:
-          goto Fail;
+      default:
+        goto Fail;
       }
       return 0;
     }
+
   Fail:
     return FT_Err_Invalid_Argument;
   }
@@ -676,7 +678,7 @@
     FT_UNUSED( module );
 
     if ( name && ft_strcmp( name, "get_bdf_property" ) == 0 )
-      return (FT_Module_Interface) bdf_get_bdf_property;
+      return (FT_Module_Interface)bdf_get_bdf_property;
 
     return NULL;
   }
--- a/src/cache/ftccmap.c
+++ b/src/cache/ftccmap.c
@@ -4,7 +4,7 @@
 /*                                                                         */
 /*    FreeType CharMap cache (body)                                        */
 /*                                                                         */
-/*  Copyright 2000-2001, 2002 by                                           */
+/*  Copyright 2000-2001, 2002, 2003 by                                     */
 /*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
 /*                                                                         */
 /*  This file is part of the FreeType project, and may only be used,       */
@@ -193,16 +193,17 @@
         break;
 
       case FTC_CMAP_BY_ENCODING:
-        if (desc->u.encoding == FT_ENCODING_UNICODE)
+        if ( desc->u.encoding == FT_ENCODING_UNICODE )
         {
-         /* since the `interesting' table, with id's 3,10, is normally the
-          * last one, we loop backwards. This looses with type1 fonts with
-          * non-BMP characters (<.0001%), this wins with .ttf with non-BMP
-          * chars (.01% ?), and this is the same about 99.99% of the time!
-          */
+          /* Since the `interesting' table, pid/eid (3,10), is normally the
+           * last one, we loop backwards.  This looses with type1 fonts with
+           * non-BMP characters (<.0001%), this wins with .ttf with non-BMP
+           * chars (.01% ?), and this is the same about 99.99% of the time!
+           */
 
           FT_UInt  unicmap_idx = count;  /* some UCS-2 map, if we found it */
 
+
           cur += count - 1;
 
           for ( idx = 0; idx < count; idx++, cur-- )
@@ -211,15 +212,15 @@
             {
               unicmap_idx = idx;  /* record we found a Unicode charmap */
 
-             /* XXX If some new encodings to represent UCS-4 are added,
-              *     they should be added here.
-              */
+              /* XXX If some new encodings to represent UCS-4 are added,
+               *     they should be added here.
+               */
               if ( ( cur[0]->platform_id == TT_PLATFORM_MICROSOFT &&
-                     cur[0]->encoding_id == TT_MS_ID_UCS_4        )          ||
+                     cur[0]->encoding_id == TT_MS_ID_UCS_4        )      ||
                    ( cur[0]->platform_id == TT_PLATFORM_APPLE_UNICODE &&
-                     cur[0]->encoding_id == TT_APPLE_ID_UNICODE_32    )      )
+                     cur[0]->encoding_id == TT_APPLE_ID_UNICODE_32    )  )
 
-              /* Hurray! We found a UCS-4 charmap. We can stop the scan! */
+              /* Hurray! We found a UCS-4 charmap.  We can stop the scan! */
               {
                 idx = count - 1 - idx;
                 goto Found_idx_for_FTC_CMAP_BY_ENCODING;
@@ -227,9 +228,9 @@
             }
           }
 
-         /* We do not have any UCS-4 charmap. Sigh.
-          * Let's see if we have some other kind of Unicode charmap, though.
-          */
+          /* We do not have any UCS-4 charmap. Sigh.
+           * Let's see if we have some other kind of Unicode charmap, though.
+           */
           if ( unicmap_idx < count )
             idx = count - 1 - unicmap_idx;
         }
--- a/src/cache/ftcsbits.c
+++ b/src/cache/ftcsbits.c
@@ -4,7 +4,7 @@
 /*                                                                         */
 /*    FreeType sbits manager (body).                                       */
 /*                                                                         */
-/*  Copyright 2000-2001, 2002 by                                           */
+/*  Copyright 2000-2001, 2002, 2003 by                                     */
 /*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
 /*                                                                         */
 /*  This file is part of the FreeType project, and may only be used,       */
@@ -189,7 +189,7 @@
           sbit->format    = (FT_Byte)bitmap->pixel_mode;
           sbit->max_grays = (FT_Byte)(bitmap->num_grays - 1);
 
-#if 0 /* this doesn't work well with embedded bitmaps !! */
+#if 0 /* this doesn't work well with embedded bitmaps */
 
           /* grab the bitmap when possible - this is a hack! */
           if ( slot->flags & FT_GLYPH_OWN_BITMAP )
--- a/src/cache/ftlru.c
+++ b/src/cache/ftlru.c
@@ -4,7 +4,7 @@
 /*                                                                         */
 /*    Simple LRU list-cache (body).                                        */
 /*                                                                         */
-/*  Copyright 2000-2001, 2002 by                                           */
+/*  Copyright 2000-2001, 2002, 2003 by                                     */
 /*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
 /*                                                                         */
 /*  This file is part of the FreeType project, and may only be used,       */
@@ -188,40 +188,40 @@
       goto Exit;
     }
 
-   /* since we haven't found the relevant element in our LRU list,
+   /* Since we haven't found the relevant element in our LRU list,
     * we're going to "create" a new one.
     *
-    * the following code is a bit special, because it tries to handle
+    * The following code is a bit special, because it tries to handle
     * out-of-memory conditions (OOM) in an intelligent way.
     *
-    * more precisely, if not enough memory is available to create a
+    * More precisely, if not enough memory is available to create a
     * new node or "flush" an old one, we need to remove the oldest
-    * elements from our list, and try again. since several tries may
-    * be necessary, a loop is needed
+    * elements from our list, and try again.  Since several tries may
+    * be necessary, a loop is needed.
     *
-    * this loop will only exit when:
+    * This loop will only exit when:
     *
-    *   - a new node was succesfully created, or an old node flushed
+    *   - a new node was successfully created, or an old node flushed
     *   - an error other than FT_Err_Out_Of_Memory is detected
     *   - the list of nodes is empty, and it isn't possible to create
     *     new nodes
     *
-    * on each unsucesful attempt, one node will be removed from the list
+    * On each unsuccessful attempt, one node will be removed from the list.
     *
     */
     
     {
-      FT_Int   drop_last = ( list->max_nodes > 0 && 
-                             list->num_nodes >= list->max_nodes );
+      FT_Int  drop_last = ( list->max_nodes > 0 && 
+                            list->num_nodes >= list->max_nodes );
 
       for (;;)
       {
         node = NULL;
 
-       /* when "drop_last" is true, we should free the last node in
-        * the list to make room for a new one. note that we re-use
-        * its memory block to save allocation calls.
-        */
+        /* If "drop_last" is true, we should free the last node in
+         * the list to make room for a new one.  Note that we reuse
+         * its memory block to save allocation calls.
+         */
         if ( drop_last )
         {
          /* find the last node in the list
@@ -244,10 +244,10 @@
             node  = *pnode;
           }
   
-         /* remove it from the list, and try to "flush" it. doing this will
-          * save a significant number of dynamic allocations compared to
-          * a classic destroy/create cycle
-          */
+          /* Remove it from the list, and try to "flush" it.  Doing this will
+           * save a significant number of dynamic allocations compared to
+           * a classic destroy/create cycle.
+           */
           *pnode = NULL;
           list->num_nodes -= 1;
   
@@ -257,14 +257,14 @@
             if ( !error )
               goto Success;
 
-           /* note that if an error occured during the flush, we need to
+           /* Note that if an error occured during the flush, we need to
             * finalize it since it is potentially in incomplete state.
             */
           }
 
-         /* we finalize, but do not destroy the last node, we
-          * simply re-use its memory block !
-          */
+          /* We finalize, but do not destroy the last node, we
+           * simply reuse its memory block!
+           */
           if ( clazz->node_done )
             clazz->node_done( node, list->data );
             
@@ -272,8 +272,8 @@
         }
         else
         {
-         /* try to allocate a new node when "drop_last" is not TRUE
-          * this usually happens on the first pass, when the LRU list
+         /* Try to allocate a new node when "drop_last" is not TRUE.
+          * This usually happens on the first pass, when the LRU list
           * is not already full.
           */
           if ( FT_ALLOC( node, clazz->node_size ) )
@@ -314,7 +314,6 @@
     *anode = result;
     return error;
   }
-
 
 
   FT_EXPORT_DEF( void )
--- a/src/cff/cffgload.c
+++ b/src/cff/cffgload.c
@@ -4,7 +4,7 @@
 /*                                                                         */
 /*    OpenType Glyph Loader (body).                                        */
 /*                                                                         */
-/*  Copyright 1996-2001, 2002 by                                           */
+/*  Copyright 1996-2001, 2002, 2003 by                                     */
 /*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
 /*                                                                         */
 /*  This file is part of the FreeType project, and may only be used,       */
@@ -2366,11 +2366,12 @@
  #ifdef FT_CONFIG_OPTION_INCREMENTAL
 
     /* Incremental fonts can optionally override the metrics. */
-    if ( !error                                       &&
-         face->root.internal->incremental_interface   &&
+    if ( !error                                                              &&
+         face->root.internal->incremental_interface                          &&
          face->root.internal->incremental_interface->funcs->get_glyph_metrics )
     {
       FT_Incremental_MetricsRec  metrics;
+
 
       metrics.bearing_x = decoder.builder.left_bearing.x;
 	  metrics.bearing_y = decoder.builder.left_bearing.y;
--- a/src/cff/cffload.c
+++ b/src/cff/cffload.c
@@ -1595,7 +1595,7 @@
       /* In order to use a predefined charset, the following must be  */
       /* true: The charset constructed for the glyphs in the font's   */
       /* charstrings dictionary must match the predefined charset in  */
-      /* the first num_glyphs                                         */
+      /* the first num_glyphs.                                        */
 
       charset->offset = offset;  /* record charset type */
 
@@ -1749,9 +1749,10 @@
         {
           FT_Byte*  p;
 
-          /* by convention, GID 0 is always ".notdef" and is never */
-          /* coded in the font. Hence, the number of codes found   */
-          /* in the table is 'count+1'                             */
+
+          /* By convention, GID 0 is always ".notdef" and is never */
+          /* coded in the font.  Hence, the number of codes found  */
+          /* in the table is `count+1'.                            */
           /*                                                       */
           encoding->count = count + 1;
 
@@ -1821,7 +1822,7 @@
             }
           }
 
-          /* simple check, one never knows what can be found in a font */
+          /* simple check; one never knows what can be found in a font */
           if ( encoding->count > 256 )
             encoding->count = 256;
         }
@@ -1923,8 +1924,8 @@
               encoding->codes[j] = (FT_UShort)i;
 
               /* update encoding count */
-              if ( encoding->count < j+1 )
-                encoding->count = j+1;
+              if ( encoding->count < j + 1 )
+                encoding->count = j + 1;
             }
           }
         }