No doubt,METAFONT is a powerful programming language, well-suited for designing fonts, in many respects much better than popularW YSIW YGpro- grams (precision, possibility of complex constructions, etc.); and, no doubt, there are thousands of fonts used all over the world, only a negligible fraction of them being designed usingMETAFONT.
signedMETAFONT, presumed that his idea of parameterized fonts would \ufb01nd many followers. Unfortunately, his expectations failed. Why? The reasons are manifold.
One of the most important aspects is perhaps the exceptional programming talent of Knuth\u2014his style is not so easy to follow. The family of Computer Modern fonts is very intricate: more than hundred \ufb01les containing nearly a megabyte ofMETAFONT code.They are rather complex\u2014Knuth modestly ad- mits inTheMETAFONTbook.
The question arises whether the complexity of the Computer Modern family re\ufb02ects the nature of the problem (i. e., type design) or rather Knuth\u2019s personal traits. We would incline to the latter opinion. A herd of 62 parameters may raise doubts, the more so as they control not only dimensions and slanting, but even the presence of serifs. Questionable also is Knuth\u2019s design decision to keep the continuous change of the proportions of glyphs along with the change of font size\u2014it perceivably deteriorates the quality of glyphs in smaller fonts (5\u20137 pt).
Most harmful to the potential success ofMETAFONT as a tool for type de- signers was perhaps Knuth\u2019s adherence to the bitmap representation of fonts. Although inMETAFONT all graphic objects are represented by outlines (B\u00e9zier curves),METAFONT\u2019s primary task is to generate bitmaps. Therefore the out- line representation of glyphs was unimportant for Knuth.
For example, the letter \u2018S\u2019 ofcmr10 consists of \ufb01ve pieces \ufb01lled and, worse still, stroked with a circular pen (\ufb01gure 1). Many tricks of this kind can be found among the Computer Modern programs: stroking with various pens, erasing (dish serifs), copying bitmaps (German double \u2018S\u2019 incm csc10), etc.
Such an approach is satisfactory as long as the resulting bitmap is the main concern. The fact is that TEX bitmap fonts have not become a worldwide stan- dard. Instead, outline font formats,Type 1 (PostScript) andTrueType (Win- dows; its PostScript equivalent is known asType 42), have won the competi- tion.
Richard J. Kinch, a staunch devotee of outlines (, p. 134) developed an in- teresting tool for an interactive conversion of Computer Modern fonts to an outline form,M et aFog (). Recently, several fonts were prepared by Taco Hoekwater () using this technology.
In spite of the successes of Kinch\u2019s approach, it looks as if re-writing the Com- puter Modern programs from scratch were more advisable. Still better would be to have a macro package facilitating thecreat ion of outline fonts. But is
In 1989, \ufb01ve years after the \ufb01rst release ofMETAFONT1,METAP OST () cam e to this world. The originator was John D. Hobby, who designed many of the elegant algorithms employed inMETAFONT. Hobby realised thatMETAFONT is an excellent tool for designing graphics, not only fonts, and that bitmap output is a severe limitation. His idea was to use theMETAFONT language to create PostScript output. He did not consider, however, making a tool for gen- erating PostScript fonts. Fortunately, his adaptation was suf\ufb01ciently general to admit font applications as well.
From the point of view of the generation of outline fonts, both programs need postprocessing: withMETAFONT one has to analyse either a generic font \ufb01le or a log \ufb01le; withMETAP OST the resultingeps\ufb01les are to be processed.
released a new version ofMETAFONT in 1984, re-written from scratch and incompatible with the predecessor. In the source ofMETAFONT,mf.web, the history ofMETAFONT starts with the statement:Version 0 was completed on July 28, 1984.
This action might not be possible to undo. Are you sure you want to continue?