1This  file contains  a list  of various  font formats.   It gives  the
2reference document and whether it is supported in FreeType 2.
3
4Table fields
5------------
6
7  wrapper format
8    The format used to represent the font data.  In the table below it
9    is  used only  if the  font format  differs.  Possible  values are
10
11      SFNT  binary
12      PFB   binary
13      PS    a text header, followed by  binary or text data
14      LZW   compressed with  either `gzip' or `compress'
15      BZ2   compressed with `bzip2'.
16
17  font format
18    How the font is to be accessed, possibly after converting the file
19    type and wrapper  format into a generic form.   Bitmap formats are
20    `BDF',  `PCF', and  one form  of `WINFNT';  all others  are vector
21    formats.   `PS' indicates  third-order,  `TT' second-order  Bézier
22    curves.
23
24  font type
25    Sub-formats of the  font format.  `SBIT' and  `MACSBIT' are bitmap
26    formats,  `MM' and  `VAR' support  optical axes.   `CFF2' supports
27    optical axes also.
28
29  glyph access
30    If  not specified,  the glyph  access  is `standard'  to the  font
31    format.   Values are  `CID' for  CID-keyed fonts,  `SYNTHETIC' for
32    fonts that  are modified  versions of  other fonts  by means  of a
33    transformation matrix, and  `TYPE_0' for PS fonts which  are to be
34    accessed in a tree-like structure.
35
36  FreeType driver
37    The module in the FreeType library which handles the specific font
38    format.  A missing  entry means that FreeType  doesn't support the
39    font format (yet).
40
41
42Notes
43-----
44
45  The  SFNT  container  format also  provides  `collections'  (usually
46  having the file extension `.ttc'  or `.otc').  A collection contains
47  multiple font faces that share some tables to avoid redundancy, thus
48  reducing the file  size.  In FreeType, elements of  a collection can
49  be accessed with a proper face index.
50
51  Both  the GX  and the  OpenType 1.8  variation fonts  provide `named
52  instances'.  FreeType  maps them to  face indices (they can  also be
53  accessed with the standard MM interface).
54
55  Other  font  formats  (not  using the  SFNT  wrapper)  also  provide
56  multiple faces  within one  file; they are  marked with  an asterisk
57  (`*') in the table below.
58
59  FreeType can  be configured to  support Mac  files (on older  Mac OS
60  versions, a `file' is stored as a data and a resource fork, this is,
61  within two  separate data chunks).  If  a file can't be  opened as a
62  font, FreeType then checks whether it  is a resource fork, trying to
63  extract  the contained  font data  from  either a  `POST' or  `sfnt'
64  resource.
65
66
67Please  send additions  and/or  corrections to  wl@gnu.org  or to  the
68FreeType   developer's   list    at   freetype-devel@nongnu.org   (for
69subscribers only).   If you can  provide a  font example for  a format
70which isn't supported yet please send a mail too.
71
72
73  wrapper font    font    glyph      FreeType reference
74  format  format  type    access     driver   documents
75 -----------------------------------------------------------------------------
76
77  ---     BDF     ---     ---        bdf      5005.BDF_Spec.pdf, X11
78
79
80  SFNT    PS      TYPE_1  ---        type1    Type 1 GX Font Format
81                                              (for the Mac) [3]
82  SFNT    PS      TYPE_1  CID        cid      5180.sfnt.pdf (for the Mac)
83                                              [3]
84  SFNT    PS      CFF     ---        cff      OT spec, 5176.CFF.pdf
85                                              (`OTTO' format)
86  SFNT    PS      CFF     CID        cff      OT spec, 5176.CFF.pdf
87  SFNT    PS      CFF     SYNTHETIC  ---      OT spec, 5176.CFF.pdf
88  SFNT    PS      CFF2    ---        cff      OT spec 1.8
89
90  SFNT    TT      SBIT    ---        sfnt     XFree86 (bitmaps only;
91                                              with `head' table)
92  SFNT    TT      MACSBIT ---        sfnt     OT spec (for the Mac;
93                                              bitmaps only; `bhed' table)
94  SFNT    TT      ---     ---        truetype OT spec (`normal' TT font)
95  SFNT    TT      VAR     ---        truetype GX spec (`?var' tables)
96  SFNT    TT      VAR     ---        truetype OT spec 1.8
97                                              (`?var' + `?VAR' tables)
98
99
100  ---     PS      TYPE_1  ---        type1    T1_SPEC.pdf
101                                              (PFA, Type 1 font resource)
102  PFB     PS      TYPE_1  ---        type1    T1_SPEC.pdf,
103                                              5040.Download_Fonts.pdf
104                                              (`normal' Type 1 font)
105  ---     PS      TYPE_1  CID        cid      PLRM.pdf (CID Font Type 0;
106                                              Type 9 font)
107  ---     PS      MM      ---        type1    5015.Type1_Supp.pdf
108                                              (Multiple Masters)
109  ---     PS      CFF     ---        cff      5176.CFF.pdf (`pure' CFF)
110  ---     PS*     CFF     CID        cff      5176.CFF.pdf (`pure' CFF)
111  ---     PS      CFF     SYNTHETIC  ---      5176.CFF.pdf (`pure' CFF)
112  ---     PS      CFF/MM  ---        cff      old 5167.CFF.pdf (`pure' CFF)
113                                              [3]
114  ---     PS*     CFF/MM  CID        cff      old 5167.CFF.pdf (`pure' CFF)
115                                              [3]
116  ---     PS      CFF/MM  SYNTHETIC  ---      old 5167.CFF.pdf (`pure' CFF)
117                                              [3]
118  PS      PS      CFF     ---        ---      PLRM.pdf (Type 2) [1]
119  PS      PS*     CFF     CID        ---      PLRM.pdf (Type 2) [1]
120  PS      PS      CFF     SYNTHETIC  ---      PLRM.pdf (Type 2) [1]
121  PS      PS      CFF/MM  ---        ---      PLRM.pdf (Type 2) [1]
122  PS      PS*     CFF/MM  CID        ---      PLRM.pdf (Type 2) [1]
123  PS      PS      CFF/MM  SYNTHETIC  ---      PLRM.pdf (Type 2) [1]
124  ---     PS      ---     TYPE_0     ---      PLRM.pdf
125  ---     PS      TYPE_3  ---        ---      PLRM.pdf (never supported)
126  ---     PS      TYPE_3  CID        ---      PLRM.pdf (CID Font Type 1;
127                                              Type 10 font; never supported)
128  PS      PS      TYPE_14 ---        ---      PLRM.pdf (Chameleon font;
129                                              Type 14 font; never supported?)
130  ---     PS      TYPE_32 CID        ---      PLRM.pdf (CID Font Type 4;
131                                              Type 32 font; never supported?)
132  PS      TT      ---     ---        type42   5012.Type42_Spec.pdf
133                                              (Type 42 font)
134  PS      TT      ---     CID        ---      PLRM.pdf (CID Font Type 2;
135                                              Type 11 font)
136
137
138  ?       ?       CEF     ?          cff      ?
139
140
141  ---     PCF     ---     ---        pcf      X11 [4]
142  LZW     PCF     ---     ---        pcf      X11 [4]
143  BZ2     PCF     ---     ---        pcf      X11 [4]
144
145
146  ---     PFR*    PFR0    ---        pfr      [2]
147  ---     PFR     PFR1    ---        ---      (undocumented, proprietary;
148                                              probably never supported)
149
150
151  ---     WINFNT* ---     ---        winfonts Windows developer's notes [5]
152  ---     WINFNT  VECTOR  ---        ---      Windows developer's notes [5]
153
154
155[1] Support should  be rather simple since this is  identical to `CFF'
156    but in a PS wrapper.
157
158[2] The  official  PFR  specification  is  no  longer  available,  but
159    archive.org has archived it:
160
161      https://web.archive.org/web/20091014062300/http://www.bitstream.com/font_rendering/products/truedoc/pfrspec.html
162      https://web.archive.org/web/20081115152605/http://www.bitstream.com/font_rendering/pdfs/pfrspec1.3.pdf
163
164    The syntax  of the  auxiliary data  is not  defined there,  but is
165    partially defined in MHP 1.0.3 (also called ETSI TS 101812 V1.3.1)
166    section 7.4.
167
168      http://www.etsi.org/
169      http://webapp.etsi.org/workprogram/Report_WorkItem.asp?WKI_ID=18799
170
171[3] Support  is rudimentary  currently; some  tables or  data are  not
172    loaded yet.
173
174[4] See
175
176      THE X WINDOW SYSTEM SERVER: X VERSION 11, RELEASE 5
177      Elias Israel, Erik Fortune, Digital Press, 1992
178      ISBN 1-55558-096-3
179
180    for a specification given in Appendix D on pgs. 436-450.  However,
181    this information might be out  of date; unfortunately, there is no
182    PCF specification available online, and this book is out of print.
183    George Williams deduced  the font format from the  X11 sources and
184    documented it for his FontForge font editor:
185
186      https://fontforge.github.io/pcf-format.html
187
188[5] This is from MS Windows 3; see Microsoft's Knowledge Base article at
189
190      https://support.microsoft.com/kb/65123
191
192------------------------------------------------------------------------
193
194Copyright 2004-2018 by
195David Turner, Robert Wilhelm, and Werner Lemberg.
196
197This  file is  part  of the  FreeType  project, and  may  only be  used,
198modified,  and  distributed under  the  terms  of  the FreeType  project
199license, LICENSE.TXT.  By continuing  to use, modify, or distribute this
200file  you indicate that  you have  read the  license and  understand and
201accept it fully.
202
203
204--- end of formats.txt ---
205
206Local Variables:
207coding: utf-8
208End:
209