Hvad er MF-filformatet?
.mf er en kildefil i almindelig tekst skrevet i programmeringssproget Metafont, skabt af Donald E. Knuth som en del af TeX-typesætningssystemet. I stedet for at beskrive glyffer som faste konturer, definerer en .mf-fil bogstavformer programmatisk ved hjælp af penstrøg, kurver og parametriske ligninger - hvilket gør det muligt for en enkelt kildefil at generere skrifttyper i enhver opløsning eller optisk størrelse ved at justere variabler.
For at producere et brugbart output skal en .mf-fil kompileres af kommandolinjeprogrammet mf (inkluderet i distributioner som TeX Live og MiKTeX). Compileren tager kilden sammen med en tilstandsspecifikation (f.eks. ljfour til en LaserJet ved 600 dpi) og producerer to output:
- En .TFM metrikfil, som TeX læser for tegnbredder, højder og knibning (kerns).
- En .GF eller .PK bitmap-fil, der indeholder rasteriserede glyffer i målopløsningen.
Filerne er ASCII-tekst uden magic bytes eller binær header. Typiske sætninger inkluderer mode_setup;, beginchar(...);, pickup pen; og endchar;, og programmet afsluttes med end. Ledsageformatet MetaPost (.mp) udvidede senere Metafont-sproget til generel vektorgrafik.
Metafont er stadig i aktiv brug, fordi Computer Modern- og AMS-skrifttypefamilierne - standardfontene i TeX og LaTeX - distribueres som .mf-kilde. Redigering kræver kendskab til Metafont-sproget; enhver teksteditor kan åbne filerne, selvom dedikerede TeX-editorer som TeXstudio tilbyder syntaksfremhævning.
Sikkerhed og tryghed
RISIKO: LOWEn Metafont .mf er almindelig tekst og indeholder ingen eksekverbar maskinkode, så det er sikkert at læse den. Kompilering kører den betroede «mf»-fortolker fra en TeX-distribution. Den eneste risiko for forveksling er at tro, det er en JAR MANIFEST.MF; begge er harmløs tekst, men de tilhører helt forskellige værktøjskæder.
Formatdetaljer
kort fortalt- Java/JAR MANIFEST.MF - Inden i en JAR er META-INF/MANIFEST.MF et manifest i almindelig tekst (Main-Class, versioner) - den sandsynlige kilde til databasens «Sun Microsystems» udvikler-tag.
- Maven / build-metadata .mf - Visse Java-værktøjer og OSGi-bundles leverer manifest-fragmenter med filtypen .mf; nøgle:værdi-par i almindelig tekst.
Programmer der åbner MF-filer
Tekniske detaljer
dyb specifikation| Format-type | Kildeprogram i Metafont-sproget (almindelig tekst); definerer skrifttypeglyffer som programmer, ikke faste konturer |
| Tegnkodning | ASCII; ingen multi-byte tegn i selve Metafont-sproget; filer åbnes uden konvertering i enhver teksteditor |
| Magic bytes / signatur | Ingen - ingen binær header; identificeres ved filtypen `.mf` og indledende Metafont-nøgleord som `mode_setup;` |
| MIME-type | `text/plain`; `application/x-metafont` bruges uformelt af visse TeX-værktøjer |
| Compiler | `mf`-programmet, aktiveret som `mf '\mode=localfont; input fontnavn'`; inkluderet i TeX Live, MiKTeX og MacTeX |
| Kompilerings-output | En `.tfm` metrikfil (tegnbredder, højder, knibning til TeX) og en `.gf` eller `.pk` bitmap i den valgte enhedsopløsning |
| Opløsning / tilstandsparameter | Målenhed og DPI vælges ved kompilering via et tilstandsnavn (f.eks. `ljfour` = 600 dpi LaserJet); ændring af tilstanden regenererer bitmappen |
| Parametrisk designmodel | Glyfformer defineret ved penstrøg og numeriske variabler; justering af én parameter (f.eks. `stem#`) skalerer konsekvent alle afhængige glyffer |
| Constraint solving | Metafont-fortolkeren løser systemer af lineære ligninger simultant for at placere punkter - former angives som begrænsninger, ikke absolutte koordinater |
| Checksum-parring | `mf`-compileren indlejrer en tjeksum i den tilhørende `.tfm`-fil, der binder den til den genererede bitmap; selve `.mf`-kilden bærer ingen tjeksum |
| Farveunderstøttelse | Kun monokrom (1-bit) - Metafont rasteriserer glyffer som sort-hvide bitmaps; intet gråtone- eller farveoutput |
| Typisk filstørrelse | Få KB til titusinder af KB; en komplet skrifttypefamilie består af snesevis af `.mf`-filer, der deler en fælles basisfil |
| Basis-makrobibliotek | Computer Modern bruger `plain.mf` og `cm` basisfiler; enhver `.mf`-kilde kan bruge `input` til at indlæse delte makrofiler for at arve definitioner |
| Aktivt brugsscenarie | Computer Modern- og AMS-skrifttypefamilier (standard TeX- og LaTeX-fonte) distribueres som `.mf`-kilde og kompileres efter behov af TeX-distributioner |
| Efterfølgende format | MetaPost (`.mp`) udvidede Metafont-sproget til at producere skalerbart PostScript/SVG-vektoroutput i stedet for bitmaps |
| Udgivet | 1979 (Metafont); rewritten Metafont84 (1984) |
| Seneste version | Metafont version 2.71828… (asymptotically approaching e; current since the 1990s) |
| Åben standard | Ja · royaltyfri |
| Specifikation | www.tug.org |
MF-konverteringer
Fællesskabets Q&A
spurgt af brugereIngen spørgsmål endnu - vær den første til at spørge om MF-filer.