A meandering bibliography of font related things — FontForge 20201107 documentation

# A meandering bibliography of font related things

## Font File Formats

- PostScript Type1

  - Supplement (discussion of multiple master fonts & counter hints)

  - Format

  - PostScript unicode character names

  - PostScript Language Reference Manual

- PostScript Multiple Master

  - Type1 MM format specification (in the Type1 Supplement)

  - Design considerations

  - Naming requirements

  - Type2 (In March of 2000, Adobe removed multiple master support from Type2 and CFF files)

    - Type2 MM format specification (In OBSOLETE type2 spec)

    - CFF MM format specification (In OBSOLETE CFF spec)

- CID keyed fonts

- PostSript Type2

  - Compact Font Format Specification (CFF)

  - For more information see under OpenType fonts

- PostScript Type3

  - PostScript Language Reference Manual 3.0 (see section 5.7)

- PostScript Type14 (Chameleon)

  - The PLRM (5.8.1) documents that this font format is undocumented.

- PostScript Type42

- Adobe Feature File (fea)

  - (FontForge’s implementation of this format is a superset of what Adobe accepts, and a superset of what Adobe documents. Neither can completely describe opentype. Adobe claims they will update the feat spec in late 2007).

- AFM

- PFM

  - I can’t find microsoft’s docs for pfm files any more, I think the format may be obsolete having been replaced by ntf.

  - Adobe’s notes on PFM files for two byte fonts

  - Third Party description

- NTF

  - This format is supposed to replace the pfm files above in windows >2000. I can’t find any docs on it.

- BDF

  - X11 Long Font Descriptor spec defines standard X BDF Properties

  - ABF – Binary format

  - Extensions to BDF for greymap support

- True Type Standard

  (Sadly different sources have slightly different definitions of less important parts of the standard, be warned)

  - Apple (I find Apple’s prose difficult, and sometimes misleading. I suggest using a different source when possible)

  - Microsoft

  - random useful site

  - TTC – True Type Font Collection

- Apple Advanced Typography extensions to TrueType

- Apple distortable font (variation tables) – vaguely equivalent to Multiple Master fonts for TrueType

  - fvar (font variations)

  - gvar (glyph variations)

  - cvar (cvt variations)

  - avar (axis variations)

- OpenType (postscript embedded in a truetype wrapper, or advanced typography tables in a truetype wrapper)

  - PostScript Type2

  - CFF

  - Adobe’s version of file format

    - SING Gaiji extention (more information is available in the documentation subdirectory of the Glyphlet GDK)

  - Microsoft’s version

  - Possible source of script codes for scripts not specified by MS/Adobe: ISO 15924

  - Microsoft’s full list of locale/language IDs (not all are supported, some may never be)

- Open Font Format Specification (ISO/IEC 14496-22:2007)

  (based on OpenType 1.4 but an international standard)

- Apple’s sfnt wrapper around a PS type1 font

- Various bitmap only sfnt formats

- WOFF – Web Open Font Format, mozilla’s compressed sfnt format

- PostScript Type42 (the opposite of opentype, it’s truetype embedded in postscript)

- SVG 1.1 fonts

  - SVG 1.2 font hinting proposal

- Macintosh font formats

- Windows raster font formats

  - FNT – Windows version 2

  - FNT – Windows version 3

  - Some info on FON file format

- X11 pcf format

  - Sadly there is no real standard for this. There’s the source code used by X11.

  - So I wrote my own description…

- PC Screen Font (psf/psfu/psf2)

- TeX font formats

  - pk packed bitmap format

  - gf generic font (bitmap) format

  - tfm metrics format

  - To make these viewable you probably want to do something like:

    $ weave pktype.web

    $ pdftex pktype.tex

- SIL Graphite Fonts (smart font extension to TrueType. Additional tables containing rules for composing, reordering, spacing, etc. glyphs)

- Palm pilot fonts (pdb files)

  - font record format

  - pdb file format

- OpenDoc. Sadly Proprietary so I shan’t support it.

- Acorn RISC OS font format (these fonts are often zipped up with a non-standard zip).

- Ikarus IK format is documented in Peter Karow’s book * Digital Formats for Typefaces,* Appendices G&I. (copies may still be available from URW++)

  Interestingly the exact format of a curve is up to the interpretation program.

- sfd files (FontForge’s internal spline font database format)

- cidmap files (Fontforge’s format for mapping cids to unicode)

- XML formats

  - TTX – TrueType XML

  - UFO & GLIF – Unified font objects & Glyph Interchange Format

Other font links

- Adobe’s downloadable font spec

- Adobe’s technical notes

- Adobe’s Font Policies document

- PostScript reference manual

  - (old reference manual)

- Microsoft’s downloadable fonts

- Downloadable PS CID CJK fonts (this site also has cmap files)`others <ftp://ftp.ora.com/pub/examples/nutshell/cjkv/adobe/samples/>`__

- Downloadable OTF CID CJK fonts (this site also has cmap files)

- Most recent cid2code tables that I’m aware of

- PANOSE

  - PANOSE Classification Metrics Guide by Hewlett-Packard Corporation, 1991 - 1997

  - PANOSE structure (Windows)

  - PANOSE: An Ideal Typeface Matching System for the Web by Robert Stevahn, 1996

  - PANOSE 2.0 White Paper by Hewlett-Packard Corporation, 1993

  - PANOSE on Wikipedia

  - Classifying Arabic Fonts Based on Design Characteristics: PANOSE-APANOSE by Jehan Janbi, 2016

## Related software

- Gimp

- Gimp users group

## Unicode

- Unicode consortium

  - Apple’s corporate use extensions (0xF850-0xF8FE)

  - Adobe’s corporate use extensions (0xF634-0F7FF) (also includes some of Apple’s codes above)

  - FontForge’s corporate use extensions (0xF500-0xF580)

  - A registry of code points in the private area (does not include any of Adobe’s or Apple’s codepoints)

  - American Mathematical Society’s corporate use extensions (0xE000-0xF7D7)

  - MicroSoft uses 0xF000-0xF0FF in their “Symbol” encoding (3,0) when they want to an uninterpretted encoding vector (ie. a mapping from byte to glyph with no meaning attached to the mapping)

- Unicode en français

- Pictures of the characters

- Unicode script assignments

  - ISO 15924 script list

- Unicode Bloopers

- PostScript Unicode names

  - Glyph names for new fonts (these are the names FontForge automatically assigns to glyphs)

  - Adobe Glyph Names provides further synonyms

  - Glyph name limitations

- Linux issues

  - FAQ

  - HOWTO

  - Linux Unicode man page

### Other Encodings

- Microsoft’s Codepages, and at the unicode site

- Mac Encodings

- MacRoman

- IPA

- GB 18030

- TeX latin encodings (possibly also on your local machine in `/usr/share/texmf/dvips/base`)

- TeX cyrillic encodings

## Books

### FontForge

- Haralambous, Yannis, 2004, Fontes & Codages

- Haralambous, Yannis (translated: P Scott Horne), 2006, Fonts & Encodings

### Typography

### Font editor concepts

Karow, Peter, 1994, Font Technology, Description and Tools

Karow, Peter, 1987, Digital Formats for Typefaces

### TeX

Hoenig, Alan TeX Unbound: LaTeX and TeX Strategies for Fonts, Graphics & More

Knuth, Donald, 1979, TeX and METAFONT, New Directions in Typesetting

## Interview

I was interviewed by the Open Source Publishing people at LGM2. There’s an mp3 file of the interview available on their site.