Metafont

Metafont
Basisdaten
Entwickler Donald E. Knuth
Erscheinungsjahr 1979
Aktuelle Version 2.71828182
(5. Februar 2021)
Betriebssystem Plattformübergreifend
Kategorie TeX
Lizenz LaTeX Project Public License
CTAN-Comprehensive TeX Archive Network

Metafont ist eine abstrakte Beschreibungssprache zur Definition von Vektorschriften. Es ist auch der Name des zugehörigen Interpreters, der den Metafont-Code ausführt und Bitmap-Schriften bestimmter Auflösung erzeugt. Es wurde von Donald E. Knuth als Begleiter von TeX entwickelt, um den zweiten Band von The Art of Computer Programming zu setzen, da er mit dem Resultat des Fotosatzes des ersten Bandes unzufrieden war. Metafont ist speziell entworfen, um TeX zu unterstützen, und ist deshalb auch Teil vieler TeX-Distributionen. Die Form der Buchstaben wird in Metafont über geometrische Gleichungen definiert, die durchaus komplex sein können. Anders als die verbreiteteren Outline-Schriften (wie TrueType oder PostScript-Type-1-Fonts), besteht ein Metafont-Font hauptsächlich aus Strichen von „Stiften“ bestimmter Breite, zusammen mit gefüllten Flächen. Daher beschreibt eine Metafont-Datei nicht die Umrisse der Zeichen, sondern den Weg des Stiftes und die jeweilige Breite des Striches beim Zeichnen. Ein schönes Beispiel dazu findet sich im weiter unten genannten Metafont-Tutorial in Kapitel 0.5.

Einige einfachere Metafont-Fonts, wie z. B. die kalligraphischen Mathematikfonts der Computer-Modern-Familie, verwenden einen einzigen Strich eines relativ großen Stifts, um jeden sichtbaren „Strich“ eines Zeichens zu definieren. Komplexere Schriften wie die Roman-Textschriften der Computer-Modern-Familie verwenden in der Regel einen schmalen Stift, um die Umrisse der sichtbaren „Striche“ zu zeichnen, die dann gefüllt werden. Bei einem Standard-Outline-Font dagegen sind die Umrisse stets dimensionslos.

Das Verwenden von nicht-dimensionslosen Stiften zur Umrandung von Flächen führt in der Regel zu rationalen Kurven höherer Ordnung für die tatsächliche Umrisslinie, wodurch eine Konversion von Metafont-Schriften nach TrueType oder PostScript oftmals äußerst schwierig ist und in der Regel nur angenähert werden kann – TrueType verwendet nur Kurven stückweise zweiten Grades, PostScript nur Kurven dritten Grades.

Metafont unterscheidet sich von anderen Systemen durch die Variabilität der Fonts, die durch wenige Parameter wie Seitenverhältnis, Neigung, Strichstärke oder Serifengröße spezifiziert werden (deswegen auch das Meta im Namen); so kann durch Veränderung von relativ abstrakten Parametern an einer Stelle in der Metafont-Datei eine in der ganzen Schrift konsistente Änderung im Aussehen erreicht werden. Über „Breite eines schmalen Striches“, „Größe von Serifen“, „Neigung der Ellipse in Rundungen“ kann z. B. eine klassizistische Antiqua zu einer modernen Grotesk-Schrift geändert werden.

Computer Modern Roman illustriert viele Verwendungen dieser Möglichkeiten; eine typische TeX-Installation beinhaltet für einen bestimmten Font Schriftschnitte in Größen von 5 bis 17 Punkt, mit der gleichen (statt durch die Hochskalierung zunehmenden) Strichstärke in allen Größen und größenabhängigen Zeichenbreiten für bessere Lesbarkeit. Andere Fonts von Computer Modern, im Speziellen Typewriter und die Sans-Serif-Schnitte, sind, wie schon weiter oben erwähnt, im Wesentlichen über die gleiche Metafont-Datei definiert, jedoch mit unterschiedlichen globalen Parametern.

Andere Parameter wie die O-Korrektur (der Betrag, den eine Rundung größer gezeichnet wird) oder der Blackness-Parameter (Linien werden etwas dicker) dienen zur Anpassung an verschiedene Ausgabegeräte. Daneben sind in Metafont die Definition von Ligaturen und die Beeinflussung des Kernings möglich.

  1. ctan.org.