Metafont

Last update: Fri Apr 14 07:46:14 2006


Table of contents


Metafont background

As part of the TeX Project at Stanford University (1978--1988), the noted computer scientist and prolific author, Professor Donald E. Knuth, created the Metafont font design system.

Briefly, metafont supports the creation of entire families of fonts from a set of dimensional parameters and outline descriptions. No other font design system in the world can make this claim. The closest recent approach to recognizing the utility of `meta'-ness is Adobe System's MultiMaster fonts, which parametrize fonts by interpolations from parameters of three or four basic fonts.

Use of metafont is completely described in volume C of Knuth's five-volume magnum opus Computers and Typesetting:

@String{pub-AW                  = "Ad{\-d}i{\-s}on-Wes{\-l}ey"}
@String{pub-AW:adr              = "Reading, MA, USA"}

@Book{Knuth:1986:MB,
  author =       "Donald E. Knuth",
  title =        "The {\METAFONT}book",
  volume =       "C",
  publisher =    pub-AW,
  address =      pub-AW:adr,
  pages =        "xi + 361",
  year =         "{\noopsort{1986c}}1986",
  ISBN =         "0-201-13445-4 (hardcover), 0-201-13444-6 (paperback)",
  LCCN =         "Z250.8.M46 K58 1986",
  bibdate =      "Fri Jul 22 09:06:26 1994",
  price =        "US\$32.95 (hardcover), US\$16.95 (paperback)",
  series =       "Computers and Typesetting",
  keywords =     "design; languages",
  review =       "ACM CR 9004-0282",
  subject =      "I.7.2 Computing Methodologies, TEXT PROCESSING,
                 Document Preparation, Metafont",
}

and the program itself is documented as a literate program in Volume D:

@Book{Knuth:1986:MP,
  author =       "Donald E. Knuth",
  title =        "{\METAFONT}: The Program",
  volume =       "D",
  publisher =    pub-AW,
  address =      pub-AW:adr,
  pages =        "xv + 560",
  year =         "{\noopsort{1986d}}1986",
  ISBN =         "0-201-13438-1",
  LCCN =         "Z250.8.M46 K578 1986",
  bibdate =      "Fri Jul 22 09:06:27 1994",
  price =        "US\$32.95",
  series =       "Computers and Typesetting",
}

Metafont applications

The largest-to-date application of metafont is the Computer Modern font family, described in Volume E of Computers and Typesetting, although a several others exist, including:


Metafont software availability

The metafont program, and associated font software, is freely available, and should be included in every free and commercial TeX distribution; visit the TeX Users Group Web site for pointers to implementations and many other language- and region-specific users groups.

The name metafont is trademarked by Addison Wesley Publishing Company to ensure that any program claiming to be metafont actually is. However, anyone is free to modify the program for other purposes, provided that they rename it. The most notable case where this has been done is John Hobby's metapost, so far described in book form only in the excellent book

@Book{Goossens:1997:LGC,
  author =       "Michel Goossens and Sebastian Rahtz and Frank
                 Mittelbach",
  title =        "The {\LaTeX} Graphics Companion: Illustrating
                 Documents with {\TeX} and {PostScript}",
  publisher =    pub-AW,
  address =      pub-AW:adr,
  pages =        "xxi + 554",
  year =         "1997",
  ISBN =         "0-201-85469-4",
  LCCN =         "Z253.4.L38G663 1997",
  bibdate =      "Fri Jul 11 07:51:47 1997",
  price =        "US\$39.75",
  series =       "Tools and Techniques for Computer Typesetting",
  acknowledgement = ack-nhfb,
  keywords =     "LaTeX (Computer file); Computerized typesetting.;
                 PostScript (Computer program language); Scientific
                 illustration -- Computer programs.; Mathematics
                 printing -- Computer programs.; Technical publishing --
                 Computer programs.",
}

Metafont font format

The output of metafont is a bitmap font file in .gf (generic font) format. This is normally immediately converted to a more compact, but equivalent, packed .pk format with Tom Rokicki's gftopk utility; pktogf is available to go in the reverse direction.

With the spread of PostScript, Type 1 outline font representations of metafont font designs are of considerable interest. Two important projects have converted a large number of fonts in metafont format to Adobe Type 1 outline font format: Basil Malyshev's BaKoMa fonts, and a joint effort by Blue Sky Research, Y&Y, and the American Mathematical Society (AMS) (with contributions from Elsevier Science Publishers, IBM Corporation, the Society for Industrial and Applied Mathematics (SIAM), and Springer-Verlag), in the bluesky fonts, both available in the Comprehensive TeX Archive Network (CTAN) archives. Both of these cover a major portion of the Computer Modern font collection.

Details of the BaKoMa work are still elusive, but I learned from Barry Smith, President of Blue Sky Research, that the bluesky collection had several thousand hours of work put into it by his technical staff, and by Y&Y, to add and tune the hints that are necessary to get good quality at lower resolution, so that font collection is of very high quality. More details of this work are available at the AMS.