Commit eab92f1c486972e3057adc614c0bc26742f47206

Werner Lemberg 2004-04-29T05:59:49

* docs/formats.txt: New file. * docs/CHANGES: Updated.

diff --git a/ChangeLog b/ChangeLog
index 1e54fd8..84c5964 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2004-04-28  Werner Lemberg  <wl@gnu.org>
+
+	* docs/formats.txt: New file.
+	* docs/CHANGES: Updated.
+
 2004-04-28  Masatake YAMATO  <jet@gyve.org>
 
 	* include/freetype/internal/tttypes.h (GX_BlendRec_)
diff --git a/docs/CHANGES b/docs/CHANGES
index ee61c28..4ab413b 100644
--- a/docs/CHANGES
+++ b/docs/CHANGES
@@ -17,6 +17,12 @@ LATEST CHANGES BETWEEN 2.1.9 and 2.1.8
       extended to cope with the new functionality.
 
 
+  III. MISCELLANEOUS
+
+    - A new  documentation file  `formats.txt' describes various  font
+      formats supported (and not supported) by FreeType.
+
+
 ======================================================================
 
 LATEST CHANGES BETWEEN 2.1.8 and 2.1.7
diff --git a/docs/formats.txt b/docs/formats.txt
new file mode 100644
index 0000000..55caad5
--- /dev/null
+++ b/docs/formats.txt
@@ -0,0 +1,124 @@
+This file contains a list of various font formats.  It gives the
+reference document and whether it is supported in FreeType 2.
+
+
+  file type:
+    The only special case is `MAC'; on older Mac OS versions, a `file'
+    is stored as a data and a resource fork, this is, within two
+    separate data chunks.  In all other cases, the font data is stored
+    in a single file.
+
+  wrapper format:
+    The format used to represent the font data.  In the table below it
+    is used only if the font format differs.  Possible values are
+    `SFNT' (binary), `PS' (a text header, followed by binary or text
+    data), and `LZW' (compressed with either `gzip' or `compress').
+
+  font format:
+    How the font is to be accessed, possibly after converting the file
+    type and wrapper format into a generic form.  Bitmap formats are
+    `BDF', `PCF', and one form of `WINFNT'; all others are vector
+    formats.
+
+  font type:
+    Sub-formats of the font format.  `SBIT' and `MACSBIT' are bitmap
+    formats, `MM' and `VAR' support optical axes.
+
+  glyph access:
+    If not specified, the glyph access is `standard' to the font
+    format.  Values are `CID' for CID-keyed fonts, `SYNTHETIC' for
+    fonts which are modified versions of other fonts by means of a
+    transformation matrix, `COLLECTION' for collecting multiple fonts
+    (sharing most of the data) into a single file, and `TYPE_0' for PS
+    fonts which are to be accessed in a tree-like structure.
+
+  FreeType driver:
+    The module in the FreeType library which handles the specific font
+    format.  A missing entry means that FreeType doesn't support the
+    font format (yet).
+
+
+Please send additions and/or corrections to wl@gnu.org or to the
+FreeType developer's list at devel@freetype (for subscribers only).  If
+you can provide a font example for a format which isn't supported yet
+please send a mail too.
+
+
+file wrapper font   font    glyph      FreeType reference
+type format  format type    access     driver   documents
+----------------------------------------------------------------------------
+
+---  ---     BDF    ---     ---        bdf      5005.BDF_Spec.pdf, X11
+
+
+---  SFNT    PS     TYPE_1  ---        ---      Type 1 GX Font Format
+                                                (for the Mac)
+MAC  SFNT    PS     TYPE_1  ---        ---      Type 1 GX Font Format
+                                                (for the Mac)
+---  SFNT    PS     TYPE_1  CID        ---      5180.sfnt.pdf (for the Mac)
+MAC  SFNT    PS     TYPE_1  CID        ---      5180.sfnt.pdf (for the Mac)
+---  SFNT    PS     CFF     ---        cff      OT spec, 5176.CFF.pdf
+                                                (`OTTO' format)
+MAC  SFNT    PS     CFF     ---        cff      OT spec, 5176.CFF.pdf
+                                                (`OTTO' format)
+---  SFNT    PS     CFF     CID        cff      OT spec, 5176.CFF.pdf
+MAC  SFNT    PS     CFF     CID        cff      OT spec, 5176.CFF.pdf
+---  SFNT    PS     CFF     SYNTHETIC  ---      OT spec, 5176.CFF.pdf
+MAC  SFNT    PS     CFF     SYNTHETIC  ---      OT spec, 5176.CFF.pdf
+---  SFNT    TT     SBIT    ---        ---      XFree86? (bitmaps only;
+                                                `head' table)
+---  SFNT    TT     MACSBIT ---        sfnt     OT spec (for the Mac;
+                                                bitmaps only; `bhed' table)
+MAC  SFNT    TT     MACSBIT ---        sfnt     OT spec (for the Mac;
+                                                bitmaps only; `bhed' table)
+---  SFNT    TT     ---     ---        truetype OT spec (`normal' TT font)
+MAC  SFNT    TT     ---     ---        truetype OT spec (`normal' TT font)
+MAC  SFNT    TT     VAR     ---        truetype GX spec (`?var' tables)
+---  SFNT    TT     ---     COLLECTION truetype OT spec (this can't be CFF)
+MAC  SFNT    TT     ---     COLLECTION truetype OT spec (this can't be CFF)
+
+
+---  ---     PS     TYPE_1  ---        type1    T1_SPEC.pdf
+                                                (`normal' Type 1 font)
+MAC  ---     PS     TYPE_1  ---        type1    T1_SPEC.pdf
+                                                (`normal' Type 1 font)
+---  ---     PS     TYPE_1  CID        cid      PLRM.pdf (CID Font Type 0;
+                                                Type 9 font)
+---  ---     PS     MM      ---        type1    5015.Type1_Supp.pdf
+                                                (Multiple Masters)
+---  ---     PS     CFF     ---        cff      5176.CFF.pdf (`pure' CFF)
+---  ---     PS     CFF     CID        cff      5176.CFF.pdf (`pure' CFF)
+---  ---     PS     CFF     SYNTHETIC  ---      5176.CFF.pdf (`pure' CFF)
+---  PS      PS     CFF     ---        ---      PLRM.pdf (Type 2) [1]
+---  PS      PS     CFF     CID        ---      PLRM.pdf (Type 2) [1]
+---  PS      PS     CFF     SYNTHETIC  ---      PLRM.pdf (Type 2) [1]
+---  ---     PS     ---     TYPE_0     ---      PLRM.pdf
+---  ---     PS     TYPE_3  ---        ---      PLRM.pdf (never supported)
+---  ---     PS     TYPE_3  CID        ---      PLRM.pdf (CID Font Type 1;
+                                                Type 10 font; never supported)
+---  PS      PS     TYPE_14 ---        ---      PLRM.pdf (Chameleon font;
+                                                Type 14 font; never supported?)
+---  ---     PS     TYPE_32 CID        ---      PLRM.pdf (CID Font Type 4;
+                                                Type 32 font; never supported?)
+---  PS      TT     ---     ---        type42   5012.Type42_Spec.pdf
+                                                (Type 42 font)
+---  PS      TT     ---     CID        ---      PLRM.pdf (CID Font Type 2;
+                                                Type 11 font)
+
+
+---  ?       ?      CEF     ?          cff      ?
+
+
+---  ---     PCF    ---     ---        pcf      X11
+---  LZW     PCF    ---     ---        pcf      X11
+
+
+---  ---     PFR    ---     ---        pfr      ?
+
+
+---  ---     WINFNT ---     ---        winfonts MS Windows 3 Developer's Notes
+---  ---     WINFNT VECTOR  ---        ---      MS Windows 3 Developer's Notes
+
+
+[1] Support should be rather simple since this is identical to `CFF'
+    but in a PS wrapper.