Was ist das MF-Dateiformat?
.mf ist eine Klartext-Quelldatei, die in der Programmiersprache Metafont geschrieben wurde, welche von Donald E. Knuth als Teil des TeX-Textsatzsystems entwickelt wurde. Anstatt Glyphen als feste Umrisse zu beschreiben, definiert eine .mf-Datei Buchstabenformen programmatisch mithilfe von Federstrichen, Kurven und parametrischen Gleichungen - so kann eine einzige Quelldatei durch Anpassen von Variablen Schriften in jeder Auflösung oder optischen Größe generieren.
Um eine nutzbare Ausgabe zu erzeugen, wird eine .mf-Datei durch das Kommandozeilenprogramm mf kompiliert (enthalten in Distributionen wie TeX Live und MiKTeX). Der Compiler nimmt den Quellcode zusammen mit einer Modus-Spezifikation (z. B. ljfour für einen LaserJet mit 600 dpi) entgegen und erzeugt zwei Ausgaben:
- Eine .TFM-Metrikdatei, die TeX für Zeichenbreiten, -höhen und Unterschneidungen (Kerns) liest.
- Eine .GF- oder .PK-Bitmap-Datei, die die gerasterten Glyphen in der Zielauflösung enthält.
Die Dateien sind ASCII-Text ohne Magic Bytes oder binären Header. Typische Anweisungen sind mode_setup;, beginchar(...);, pickup pen; und endchar;, wobei das Programm mit end endet. Das Begleitformat MetaPost (.mp) erweiterte später die Metafont-Sprache für allgemeine Vektorgrafiken.
Metafont bleibt in aktivem Gebrauch, da die Schriftfamilien Computer Modern und AMS - die Standardschriften von TeX und LaTeX - als .mf-Quellcode verteilt werden. Das Bearbeiten erfordert Kenntnisse der Metafont-Sprache; jeder Klartext-Editor kann die Dateien öffnen, wobei dedizierte TeX-Editoren wie TeXstudio eine Syntaxhervorhebung bieten.
Sicherheit
RISIKO: LOWEine Metafont-.mf ist Klartext und enthält keinen ausführbaren Maschinencode, daher ist das Lesen sicher. Das Kompilieren führt den vertrauenswürdigen „mf“-Interpreter einer TeX-Distribution aus. Das einzige Verwechslungsrisiko besteht darin, sie mit einer JAR MANIFEST.MF zu verwechseln; beide sind harmloser Text, gehören aber zu völlig unterschiedlichen Toolchains.
Formatdetails
kurz gefasst- Java/JAR MANIFEST.MF - Innerhalb einer JAR ist META-INF/MANIFEST.MF ein Klartext-Manifest (Main-Class, Versionen) - die wahrscheinliche Quelle für den „Sun Microsystems“-Entwickler-Tag in der Datenbank.
- Maven / Build-Metadaten .mf - Einige Java-Tools und OSGi-Bundles liefern Manifest-Fragmente mit einer .mf-Endung aus; Klartext-Key-Value-Paare.
Programme zum Öffnen von MF-Dateien
Technische Details
technische Spezifikation| Formattyp | Klartext-Quellprogramm in der Metafont-Sprache; definiert Schriftglyphen als Programme, nicht als feste Umrisse |
| Zeichenkodierung | ASCII; keine Multi-Byte-Zeichen in der Metafont-Sprache selbst; Dateien lassen sich ohne Konvertierung in jedem Klartext-Editor öffnen |
| Magic Bytes / Signatur | Keine - kein binärer Header; identifiziert durch die Dateiendung `.mf` und führende Metafont-Schlüsselwörter wie `mode_setup;` |
| MIME-Typ | `text/plain`; `application/x-metafont` wird informell von einigen TeX-Tools verwendet |
| Compiler | Das Programm `mf`, aufgerufen als `mf '\mode=localfont; input fontname'`; enthalten in TeX Live, MiKTeX und MacTeX |
| Kompilierungsergebnisse | Eine `.tfm`-Metrikdatei (Zeichenbreiten, -höhen, Unterschneidungen für TeX) und eine `.gf`- oder `.pk`-Bitmap in der gewählten Geräteauflösung |
| Auflösung / Modus-Parameter | Zielgerät und DPI werden beim Kompilieren über einen Modusnamen gewählt (z. B. `ljfour` = 600 dpi LaserJet); das Ändern des Modus generiert die Bitmap neu |
| Parametrisches Designmodell | Glyphenformen definiert durch Federstriche und numerische Variablen; das Anpassen eines Parameters (z. B. `stem#`) skaliert alle abhängigen Glyphen konsistent neu |
| Constraint-Solving | Der Metafont-Interpreter löst Systeme linearer Gleichungen gleichzeitig, um Punkte zu positionieren - Formen werden als Bedingungen (Constraints) angegeben, nicht als absolute Koordinaten |
| Prüfsummen-Paarung | Der `mf`-Compiler bettet eine Prüfsumme in die zugehörige `.tfm`-Datei ein, die sie an die generierte Bitmap bindet; die `.mf`-Quelle selbst trägt keine Prüfsumme |
| Farbunterstützung | Nur Monochrom (1-Bit) - Metafont rastert Glyphen als Schwarz-Weiß-Bitmaps; keine Graustufen- oder Farbausgabe |
| Typische Dateigröße | Einige KB bis einige zehn KB; eine vollständige Schriftfamilie besteht aus Dutzenden von `.mf`-Dateien, die sich eine gemeinsame Basisdatei teilen |
| Basis-Makrobibliothek | Computer Modern verwendet `plain.mf` und `cm`-Basisdateien; jede `.mf`-Quelle kann gemeinsame Makrodateien via `input` einbinden, um Definitionen zu erben |
| Aktiver Anwendungsfall | Die Schriftfamilien Computer Modern und AMS (Standard-TeX- und LaTeX-Schriften) werden als `.mf`-Quellcode verteilt und bei Bedarf von TeX-Distributionen kompiliert |
| Nachfolgeformat | MetaPost (`.mp`) erweiterte die Metafont-Sprache, um skalierbare PostScript/SVG-Vektorausgaben anstelle von Bitmaps zu erzeugen |
| Veröffentlicht | 1979 (Metafont); rewritten Metafont84 (1984) |
| Neueste Version | Metafont version 2.71828… (asymptotically approaching e; current since the 1990s) |
| Offener Standard | Ja · lizenzgebührenfrei |
| Spezifikation | www.tug.org |
MF-Konvertierungen
Community Q&A
von Nutzern gefragtNoch keine Fragen - stellen Sie die erste Frage zu MF-Dateien.