Che cos'è il formato di file MF?
.mf è un file sorgente in formato testo semplice scritto nel linguaggio di programmazione Metafont, creato da Donald E. Knuth come parte del sistema di composizione tipografica TeX. Invece di descrivere i glifi come contorni fissi, un file .mf definisce le forme delle lettere in modo programmatico utilizzando tratti di penna, curve ed equazioni parametriche - consentendo a un singolo file sorgente di generare font a qualsiasi risoluzione o dimensione ottica regolando le variabili.
Per produrre un output utilizzabile, un file .mf viene compilato dal programma a riga di comando mf (incluso in distribuzioni come TeX Live e MiKTeX). Il compilatore riceve il sorgente insieme a una specifica di modalità (ad esempio, ljfour per una LaserJet a 600 dpi) e produce due output:
- Un file metrico .TFM che TeX legge per le larghezze, le altezze e le crenature dei caratteri.
- Un file bitmap .GF o .PK contenente i glifi rasterizzati alla risoluzione di destinazione.
I file sono in testo ASCII senza magic bytes o intestazioni binarie. Le istruzioni tipiche includono mode_setup;, beginchar(...);, pickup pen; e endchar;, terminando il programma con end. Il formato complementare MetaPost (.mp) ha successivamente esteso il linguaggio di Metafont per la grafica vettoriale generica.
Metafont rimane in uso attivo perché le famiglie di caratteri Computer Modern e AMS - i font predefiniti di TeX e LaTeX - sono distribuite come sorgenti .mf. La modifica richiede la conoscenza del linguaggio Metafont; qualsiasi editor di testo semplice può aprire i file, sebbene gli editor TeX dedicati come TeXstudio forniscano il riconoscimento della sintassi.
Sicurezza e incolumità
RISCHIO: LOWUn file .mf di Metafont è testo semplice e non contiene codice macchina eseguibile, quindi la lettura è sicura. La compilazione esegue l'interprete affidabile «mf» di una distribuzione TeX. L'unico rischio di confusione è scambiarlo per un MANIFEST.MF di JAR; entrambi sono testi innocui, ma appartengono a toolchain completamente diverse.
Dettagli del formato
in sintesi- Java/JAR MANIFEST.MF - All'interno di un JAR, META-INF/MANIFEST.MF è un manifesto in testo semplice (Main-Class, versioni) - la probabile fonte del tag sviluppatore «Sun Microsystems» nel database.
- Maven / metadati di build .mf - Alcuni strumenti Java e bundle OSGi includono frammenti di manifesto con estensione .mf; coppie chiave:valore in testo semplice.
Programmi che aprono file MF
Dettagli tecnici
specifiche approfondite| Tipo di formato | Programma sorgente in linguaggio Metafont in testo semplice; definisce i glifi dei font come programmi, non come contorni fissi |
| Codifica dei caratteri | ASCII; nessun carattere multi-byte nel linguaggio Metafont stesso; i file si aprono senza conversione in qualsiasi editor di testo semplice |
| Magic bytes / firma | Nessuno - nessuna intestazione binaria; identificato dall'estensione `.mf` e dalle parole chiave Metafont iniziali come `mode_setup;` |
| Tipo MIME | `text/plain`; `application/x-metafont` usato informalmente da alcuni strumenti TeX |
| Compilatore | Programma `mf`, invocato come `mf '\mode=localfont; input nomefont'`; incluso in TeX Live, MiKTeX e MacTeX |
| Output della compilazione | Un file metrico `.tfm` (larghezze, altezze, crenature dei caratteri per TeX) e una bitmap `.gf` o `.pk` alla risoluzione del dispositivo scelto |
| Parametro risoluzione / modo | Dispositivo di destinazione e DPI scelti al momento della compilazione tramite un nome di modalità (es. `ljfour` = 600 dpi LaserJet); cambiando la modalità si rigenera la bitmap |
| Modello di progettazione parametrica | Forme dei glifi definite da tratti di penna e variabili numeriche; la regolazione di un parametro (es. `stem#`) ridimensiona coerentemente tutti i glifi dipendenti |
| Risoluzione dei vincoli | L'interprete Metafont risolve simultaneamente sistemi di equazioni lineari per posizionare i punti - le forme sono dichiarate come vincoli, non come coordinate assolute |
| Accoppiamento checksum | Il compilatore `mf` incorpora un checksum nel file `.tfm` complementare legandolo alla bitmap generata; il sorgente `.mf` stesso non trasporta checksum |
| Supporto colore | Solo monocromatico (1-bit) - Metafont rasterizza i glifi come bitmap in bianco e nero; nessun output in scala di grigi o a colori |
| Dimensione tipica del file | Da pochi KB a decine di KB; una famiglia completa di caratteri consiste in dozzine di file `.mf` che condividono un file di base comune |
| Libreria macro di base | Computer Modern utilizza i file di base `plain.mf` e `cm`; qualsiasi sorgente `.mf` può usare `input` per file macro condivisi per ereditare le definizioni |
| Caso d'uso attivo | Le famiglie di caratteri Computer Modern e AMS (font predefiniti di TeX e LaTeX) sono distribuite come sorgenti `.mf` e compilate su richiesta dalle distribuzioni TeX |
| Formato successore | MetaPost (`.mp`) ha esteso il linguaggio Metafont per produrre output vettoriale PostScript/SVG scalabile invece di bitmap |
| Rilasciato | 1979 (Metafont); rewritten Metafont84 (1984) |
| Ultima versione | Metafont version 2.71828… (asymptotically approaching e; current since the 1990s) |
| Standard aperto | Sì · royalty-free |
| Specifica | www.tug.org |
Conversioni MF
Domande e risposte della community
chiesto dagli utentiAncora nessuna domanda - sii il primo a chiedere informazioni sui file MF.