shithub: freetype+ttf2subf

Download patch

ref: 0fcb412ffc566b1415640adfdf7f4f096a9ba2f8
parent: c8087481dffcffc4a09e28d106aa16190f7cee90
author: David Turner <[email protected]>
date: Thu Dec 20 08:33:03 EST 2001

* docs/CHANGES: updated for 2.0.6 release

        * src/cff/cffload.h, src/cff/cffload.c, src/cff/cffgload.c: updated
        to mode the definition of encoding tables within "cffload.c" instead
        of making them part of a shared header (causing problems in "multi"
        builds)

git/fs: mount .git/fs: mount/attach disallowed
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
 2001-12-20  David Turner  <[email protected]>
 
+        * docs/CHANGES: updated for 2.0.6 release
+
+        * src/cff/cffload.h, src/cff/cffload.c, src/cff/cffgload.c: updated
+        to mode the definition of encoding tables within "cffload.c" instead
+        of making them part of a shared header (causing problems in "multi"
+        builds)
+
         * docs/TODO: added "stem3 and counter hints support" to the TODO list
         for the Postscript hinter
 
--- a/docs/CHANGES
+++ b/docs/CHANGES
@@ -1,18 +1,85 @@
 LATEST CHANGES BETWEEN 2.0.6 and 2.0.5
 
+ *** IMPORTANT BUG FIXES:
+ 
+  - it wasn't possible to load embedded bitmaps when the auto-hinter was
+    used. This is now fixed..
+ 
+  - the TrueType font driver didn't load some composites properly
+    (the sub-glyphs were slightly shifted, and this was only noticeable
+     when using monochrome rendering)
+
+  -  Various fixes to the auto-hinter.  They merely improve the output of
+     sans-serif fonts.  Note that there are still problems with serifed
+     fonts and composites (accented characters).
+
+  - all scalable font drivers mistakenly returned un-fitted glyph advances
+    when hinting was requested. This created problems for a number of layout
+    applications. This is a very old bug that got undetected mainly because
+    most test/demo program perform rounding explicitely or implicitely
+    (through the cache).
+
+  - FT_Glyph_ToBitmap did mistakenly modify the source glyph in certain cases.
+
+  - "glnames.py" still contained a bug that made FreeType return invalid
+    names for certain glyphs.
+
+
+ *** IMPORTANT UPDATES & NEW FEATURES:
+
+  - important updates to the Mac-specific parts of the library. 
+
   - The caching sub-system has been completely re-designed, and its API has
     evolved (the old one is still supported for backwards).
+    
+    The documentation for it will be completed on the next release though..
+    For now, you're encouraged to continue using the old API
 
-  - A new charmap cache is provided too.
+  - A new charmap cache is provided too. See FTC_CMapCache. This is useful
+    to perform character code -> glyph index translations quickly, without
+    the need for an opened FT_Face..
 
-  - A new Postscript hinter module has been added to support native hints in
+  - A NEW POSTSCRIPT HINTER module has been added to support native hints in
     the following formats: Postscript Type 1, Postscript CID and CFF/CEF.
 
-    For now, only the Type 1 driver uses it; the "cid" and "cff" drivers
-    will be updated shortly.
+    CHECK THIS OUT !! Note that the auto-hinter produces better results for
+    a number of badly-hinted fonts (mostly auto-generated ones) though..
 
-  - "glnames.py" still contained a bug that made FreeType return invalid
-    names for certain glyphs.
+
+  - A memory debugger is now part of the standard FreeType sources. To
+    enable it, define FT_DEBUG_MEMORY in <freetype/config/ftoption.h>,
+    and recompile the library.
+    
+    Now, define the _environment_ variable FT_DEBUG_MEMORY and run any
+    program using FreeType. When the library is exited, a summary of
+    memory footprints and eventual leaks will be displayed..
+
+    this works transparently with _any_ program that uses FreeType..
+    you'll need _lots_ of memory to use this however (allocated blocks
+    are never released to the heap to detect double deletes easily)
+
+ *** OTHER:
+ 
+  - we're aware of subtle differences between the output of FT 1 and FT 2
+    when it comes to monochrome TrueType-hinted glyphs. These are most
+    probably due to small differences in the monochrome rasterizers and
+    will be worked out in an upcoming release.
+
+    
+  - the next release will be named FreeType 2.1, and will include a
+    _major_ rework of the library's internals, both to make the source
+    code more consistent, readable, etc.. as well as to implement new
+    features like:
+    
+      - sub-pixel filtering ("ClearType" and "CoolType" like)
+      - gamma-correction
+      - dynamic version and features retrieval
+      - important enhancements to the auto-hinter
+      - important enhancements to the monochrome rasterizer
+        (especially for Postscript-based formats)
+
+
+  Merry XMas :-)
 
 ============================================================================
 
--- a/src/cff/cffload.h
+++ b/src/cff/cffload.h
@@ -27,1023 +27,6 @@
 
 FT_BEGIN_HEADER
 
-
-#if 0
-  const FT_UShort  cff_isoadobe_charset[229] =
-  {
-    0,
-    1,
-    2,
-    3,
-    4,
-    5,
-    6,
-    7,
-    8,
-    9,
-    10,
-    11,
-    12,
-    13,
-    14,
-    15,
-    16,
-    17,
-    18,
-    19,
-    20,
-    21,
-    22,
-    23,
-    24,
-    25,
-    26,
-    27,
-    28,
-    29,
-    30,
-    31,
-    32,
-    33,
-    34,
-    35,
-    36,
-    37,
-    38,
-    39,
-    40,
-    41,
-    42,
-    43,
-    44,
-    45,
-    46,
-    47,
-    48,
-    49,
-    50,
-    51,
-    52,
-    53,
-    54,
-    55,
-    56,
-    57,
-    58,
-    59,
-    60,
-    61,
-    62,
-    63,
-    64,
-    65,
-    66,
-    67,
-    68,
-    69,
-    70,
-    71,
-    72,
-    73,
-    74,
-    75,
-    76,
-    77,
-    78,
-    79,
-    80,
-    81,
-    82,
-    83,
-    84,
-    85,
-    86,
-    87,
-    88,
-    89,
-    90,
-    91,
-    92,
-    93,
-    94,
-    95,
-    96,
-    97,
-    98,
-    99,
-    100,
-    101,
-    102,
-    103,
-    104,
-    105,
-    106,
-    107,
-    108,
-    109,
-    110,
-    111,
-    112,
-    113,
-    114,
-    115,
-    116,
-    117,
-    118,
-    119,
-    120,
-    121,
-    122,
-    123,
-    124,
-    125,
-    126,
-    127,
-    128,
-    129,
-    130,
-    131,
-    132,
-    133,
-    134,
-    135,
-    136,
-    137,
-    138,
-    139,
-    140,
-    141,
-    142,
-    143,
-    144,
-    145,
-    146,
-    147,
-    148,
-    149,
-    150,
-    151,
-    152,
-    153,
-    154,
-    155,
-    156,
-    157,
-    158,
-    159,
-    160,
-    161,
-    162,
-    163,
-    164,
-    165,
-    166,
-    167,
-    168,
-    169,
-    170,
-    171,
-    172,
-    173,
-    174,
-    175,
-    176,
-    177,
-    178,
-    179,
-    180,
-    181,
-    182,
-    183,
-    184,
-    185,
-    186,
-    187,
-    188,
-    189,
-    190,
-    191,
-    192,
-    193,
-    194,
-    195,
-    196,
-    197,
-    198,
-    199,
-    200,
-    201,
-    202,
-    203,
-    204,
-    205,
-    206,
-    207,
-    208,
-    209,
-    210,
-    211,
-    212,
-    213,
-    214,
-    215,
-    216,
-    217,
-    218,
-    219,
-    220,
-    221,
-    222,
-    223,
-    224,
-    225,
-    226,
-    227,
-    228
-  };
-
-  const FT_UShort  cff_expert_charset[166] =
-  {
-    0,
-    1,
-    229,
-    230,
-    231,
-    232,
-    233,
-    234,
-    235,
-    236,
-    237,
-    238,
-    13,
-    14,
-    15,
-    99,
-    239,
-    240,
-    241,
-    242,
-    243,
-    244,
-    245,
-    246,
-    247,
-    248,
-    27,
-    28,
-    249,
-    250,
-    251,
-    252,
-    253,
-    254,
-    255,
-    256,
-    257,
-    258,
-    259,
-    260,
-    261,
-    262,
-    263,
-    264,
-    265,
-    266,
-    109,
-    110,
-    267,
-    268,
-    269,
-    270,
-    271,
-    272,
-    273,
-    274,
-    275,
-    276,
-    277,
-    278,
-    279,
-    280,
-    281,
-    282,
-    283,
-    284,
-    285,
-    286,
-    287,
-    288,
-    289,
-    290,
-    291,
-    292,
-    293,
-    294,
-    295,
-    296,
-    297,
-    298,
-    299,
-    300,
-    301,
-    302,
-    303,
-    304,
-    305,
-    306,
-    307,
-    308,
-    309,
-    310,
-    311,
-    312,
-    313,
-    314,
-    315,
-    316,
-    317,
-    318,
-    158,
-    155,
-    163,
-    319,
-    320,
-    321,
-    322,
-    323,
-    324,
-    325,
-    326,
-    150,
-    164,
-    169,
-    327,
-    328,
-    329,
-    330,
-    331,
-    332,
-    333,
-    334,
-    335,
-    336,
-    337,
-    338,
-    339,
-    340,
-    341,
-    342,
-    343,
-    344,
-    345,
-    346,
-    347,
-    348,
-    349,
-    350,
-    351,
-    352,
-    353,
-    354,
-    355,
-    356,
-    357,
-    358,
-    359,
-    360,
-    361,
-    362,
-    363,
-    364,
-    365,
-    366,
-    367,
-    368,
-    369,
-    370,
-    371,
-    372,
-    373,
-    374,
-    375,
-    376,
-    377,
-    378
-  };
-
-  const FT_UShort  cff_expertsubset_charset[87] =
-  {
-    0,
-    1,
-    231,
-    232,
-    235,
-    236,
-    237,
-    238,
-    13,
-    14,
-    15,
-    99,
-    239,
-    240,
-    241,
-    242,
-    243,
-    244,
-    245,
-    246,
-    247,
-    248,
-    27,
-    28,
-    249,
-    250,
-    251,
-    253,
-    254,
-    255,
-    256,
-    257,
-    258,
-    259,
-    260,
-    261,
-    262,
-    263,
-    264,
-    265,
-    266,
-    109,
-    110,
-    267,
-    268,
-    269,
-    270,
-    272,
-    300,
-    301,
-    302,
-    305,
-    314,
-    315,
-    158,
-    155,
-    163,
-    320,
-    321,
-    322,
-    323,
-    324,
-    325,
-    326,
-    150,
-    164,
-    169,
-    327,
-    328,
-    329,
-    330,
-    331,
-    332,
-    333,
-    334,
-    335,
-    336,
-    337,
-    338,
-    339,
-    340,
-    341,
-    342,
-    343,
-    344,
-    345,
-    346
-  };
-
-  const FT_UShort  cff_standard_encoding[256] =
-  {
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    1,
-    2,
-    3,
-    4,
-    5,
-    6,
-    7,
-    8,
-    9,
-    10,
-    11,
-    12,
-    13,
-    14,
-    15,
-    16,
-    17,
-    18,
-    19,
-    20,
-    21,
-    22,
-    23,
-    24,
-    25,
-    26,
-    27,
-    28,
-    29,
-    30,
-    31,
-    32,
-    33,
-    34,
-    35,
-    36,
-    37,
-    38,
-    39,
-    40,
-    41,
-    42,
-    43,
-    44,
-    45,
-    46,
-    47,
-    48,
-    49,
-    50,
-    51,
-    52,
-    53,
-    54,
-    55,
-    56,
-    57,
-    58,
-    59,
-    60,
-    61,
-    62,
-    63,
-    64,
-    65,
-    66,
-    67,
-    68,
-    69,
-    70,
-    71,
-    72,
-    73,
-    74,
-    75,
-    76,
-    77,
-    78,
-    79,
-    80,
-    81,
-    82,
-    83,
-    84,
-    85,
-    86,
-    87,
-    88,
-    89,
-    90,
-    91,
-    92,
-    93,
-    94,
-    95,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    96,
-    97,
-    98,
-    99,
-    100,
-    101,
-    102,
-    103,
-    104,
-    105,
-    106,
-    107,
-    108,
-    109,
-    110,
-    0,
-    111,
-    112,
-    113,
-    114,
-    0,
-    115,
-    116,
-    117,
-    118,
-    119,
-    120,
-    121,
-    122,
-    0,
-    123,
-    0,
-    124,
-    125,
-    126,
-    127,
-    128,
-    129,
-    130,
-    131,
-    0,
-    132,
-    133,
-    0,
-    134,
-    135,
-    136,
-    137,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    138,
-    0,
-    139,
-    0,
-    0,
-    0,
-    0,
-    140,
-    141,
-    142,
-    143,
-    0,
-    0,
-    0,
-    0,
-    0,
-    144,
-    0,
-    0,
-    0,
-    145,
-    0,
-    0,
-    146,
-    147,
-    148,
-    149,
-    0,
-    0,
-    0,
-    0
-  };
-
-  const FT_UShort  cff_expert_encoding[256] =
-  {
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    1,
-    229,
-    230,
-    0,
-    231,
-    232,
-    233,
-    234,
-    235,
-    236,
-    237,
-    238,
-    13,
-    14,
-    15,
-    99,
-    239,
-    240,
-    241,
-    242,
-    243,
-    244,
-    245,
-    246,
-    247,
-    248,
-    27,
-    28,
-    249,
-    250,
-    251,
-    252,
-    0,
-    253,
-    254,
-    255,
-    256,
-    257,
-    0,
-    0,
-    0,
-    258,
-    0,
-    0,
-    259,
-    260,
-    261,
-    262,
-    0,
-    0,
-    263,
-    264,
-    265,
-    0,
-    266,
-    109,
-    110,
-    267,
-    268,
-    269,
-    0,
-    270,
-    271,
-    272,
-    273,
-    274,
-    275,
-    276,
-    277,
-    278,
-    279,
-    280,
-    281,
-    282,
-    283,
-    284,
-    285,
-    286,
-    287,
-    288,
-    289,
-    290,
-    291,
-    292,
-    293,
-    294,
-    295,
-    296,
-    297,
-    298,
-    299,
-    300,
-    301,
-    302,
-    303,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    0,
-    304,
-    305,
-    306,
-    0,
-    0,
-    307,
-    308,
-    309,
-    310,
-    311,
-    0,
-    312,
-    0,
-    0,
-    312,
-    0,
-    0,
-    314,
-    315,
-    0,
-    0,
-    316,
-    317,
-    318,
-    0,
-    0,
-    0,
-    158,
-    155,
-    163,
-    319,
-    320,
-    321,
-    322,
-    323,
-    324,
-    325,
-    0,
-    0,
-    326,
-    150,
-    164,
-    169,
-    327,
-    328,
-    329,
-    330,
-    331,
-    332,
-    333,
-    334,
-    335,
-    336,
-    337,
-    338,
-    339,
-    340,
-    341,
-    342,
-    343,
-    344,
-    345,
-    346,
-    347,
-    348,
-    349,
-    350,
-    351,
-    352,
-    353,
-    354,
-    355,
-    356,
-    357,
-    358,
-    359,
-    360,
-    361,
-    362,
-    363,
-    364,
-    365,
-    366,
-    367,
-    368,
-    369,
-    370,
-    371,
-    372,
-    373,
-    374,
-    375,
-    376,
-    377,
-    378
-  };
-#endif
-
   FT_LOCAL FT_UShort
   CFF_Get_Standard_Encoding( FT_UInt  charcode );