Formato file font troff
Finalità
Specifica i file di descrizione per il comando troff .
Descrizione
Per ogni fototipografo che il comando troff supporta e che è disponibile sul tuo sistema, c'è una directory che contiene file che descrivono il fototiposetter e i suoi font. Questa directory è denominata /usr/lib/font/devNome, dove la variabile Nome specifica il nome del phototypesetter.
Il file DESC ASCII nella directory /usr/lib/font/devName all'interno della directory di origine del comando troff descrive le caratteristiche del phototypesetter specificato dalla variabile Name . Una versione binaria di questo file si trova nel file /usr/lib/font/devNome/DESC.out . Ogni riga di questo file ASCII inizia con una parola che identifica una caratteristica, seguita da apposite specificazioni. Righe bianche e linee che iniziano con il # (segno sterlina) vengono ignorate.
Per molti tipografi, i font scaricati sono supportati in una moda generale. Le bitmap per questi font sono memorizzate nella directory /usr/lib/font/devNome/bitmaps . Ogni coppia di dimensione dei font viene memorizzata in un file con un nome del modulo Fontname-Size.pk. Ad esempio:
B-24.pk Queste bitmap vengono memorizzate nel formato PK compresso utilizzato da TeX e dai relativi post - processori. Questi bitmap sono facilmente generati da moduli facilmente disponibili, come METAFONT, o facilmente convertiti da altre forme.
Oltre ai file bitmap, per ogni carattere tipografico viene richiesto un file di font troff , come descritto qui. Nel campo di unilarghezza di questo file viene data la larghezza di ogni bitmap di carattere in unità di dispositivi.
Le linee legali per il file DESC sono:
| Elemento | Descrizione |
|---|---|
| res Numero | Risoluzione del dispositivo in incrementi di base per pollice. |
| unilarghezza Numero | Dimensione del punto in cui sono riportate tutte le tabelle di larghezza nei file di descrizione del font. Il comando troff scalda automaticamente le larghezze dalla dimensione unilarghezza alla dimensione del punto con cui si sta lavorando. |
| sizescale Numero | Scaling per dimensioni di punti frazionali. Il valore della variabile Numero è 1. La linea sizescale non è attualmente utilizzata. |
| paperwidth Numero | Larghezza della carta negli incrementi di base. |
| paperlength Numero | Lunghezza della carta negli incrementi di base. |
| biggestfont Numero | Numero massimo di caratteri in un font. |
| dimensioni Number1 Number2... | Elenco delle dimensioni dei punti disponibili su tipografo, terminato entro il 0. |
| Font NumberName... | Numero di font iniziali, seguito dai nomi ASCII dei font. Ad esempio: |
| set di codici codesetName | Codeset per la particolare stampante o typesetter, dove CodesetName è un nome codeset valido da utilizzare con il comando iconv . Il set di codici specificato viene utilizzato per definire le voci di carattere nella sezione charset dei file di descrizione dei font. Ad esempio:Il comando troff utilizza il CodesetName specificato e la serie di codici implicati dalla locale corrente per stabilire se le conversioni di serie di codici sono necessarie per i caratteri di immissione. La funzione iconv viene utilizzata per eseguire la conversione della serie di codici se necessario. |
| set di caratteri | L'ultima parola chiave nel file è su una riga da sola. Di seguito l'elenco dei nomi di carattere speciali per questo dispositivo. I nomi sono separati da uno spazio o da una nuova linea. L'elenco può essere il più lungo necessario. I nomi non presenti in questo elenco non sono ammessi nei file di descrizione dei font. |
| hor Numero | Unità più piccola di movimento orizzontale. |
| verdura Numero | Unità più piccola di movimento verticale. Le linee hor e verdura descrivono le relazioni tra i movimenti nelle direzioni orizzontali e verticali. Ad esempio, se il dispositivo si muove in singoli incrementi di base in entrambe le direzioni, sia le linee hor che verdura hanno valori di 1. Se il movimento verticale si verifica solo in multipli di due unità di base e il movimento orizzontale si verifica solo in un'unità di base, verdura è 2 e hor è 1. |
Per ogni font supportato dal fototiposetter esiste anche un file ASCII con lo stesso nome del font (ad esempio, R, I, CW) che lo descrive. Il formato per un file di descrizione dei font è il seguente:
| Elemento | Descrizione |
|---|---|
| nome Nome | Nome del font, come R o CW. |
| internalname Nome | Nome interno del font. |
| speciale | Imposta la bandiera che indica che il font è speciale. |
| legature Nome ...0 | Imposta la bandiera che indica che il font ha delle legature. L'elenco delle legature segue ed è terminato da un 0 (zero). Le legature accettate sono ff fi fl ffi ffl. |
| spaziolarghezza Numero | Specifica larghezza di spazio se si desidera qualcosa di diverso dal default (1/3 di uno spazio em). |
| set di caratteri | Il set di caratteri deve arrivare alla fine. Ogni riga che segue la parola charset descrive un carattere nel font. Ogni riga ha uno dei due formati:OPPURE dove il valore delNameil campo è un carattere a singolo byte o un nome di carattere speciale dall'elenco trovato nel file DESC . L'intestazioneWidthcampo è in incrementi di base. L'intestazioneKerningil campo è 1 se il carattere scende sotto la riga, 2 se sale sopra la lettera`a', e 3 se entrambi sorgono e discendono. L'intestazioneCodecampo è il numero inviato al tipografo per produrre il carattere. Per un font nls , ilCodecampo può essere una sequenza multi - byte. Per font di dispositivi di output a carattere esteso, ilCodecampo può essere una sequenza multi - byte che inizia e termina con una doppia virgolette. Nella sequenza, i caratteri di controllo o di non stampa possono essere rappresentati dalle seguenti sequenze di escape: |
| \n | Produce una nuova linea. |
| \r | Produce un ritorno. |
| \t | Produce una scheda. |
| \b | Produce uno schienale. |
| \" | Produce una doppia quotazione. |
| \xdd | Produce un numero esadecimale, doveddsono due cifre esadecimali. |
| \ooo | Produce un numero ottale, doveooosono tre cifre ottali. Il secondo formato,Name ", viene utilizzato per dimostrare che il carattere ha più di un nome. I doppi apici indicano che questo nome ha gli stessi valori della riga precedente. L'intestazioneKerningeCodei campi non vengono utilizzati se il valore delWidthcampo è un doppio segno di quotazione. Il numero totale di caratteri diversi in questo elenco non deve essere superiore al valore della riga biggestfont nel file DESC . |
I file DESC.out e Font.out sono stati creati come risultato dell'esecuzione del programma makedev sul file DESC .
I caratteri prototipo vengono forniti per la sezione charset della tabella dei font per i font in set di caratteri di grandi dimensioni. La maggior parte dei personaggi in serie di caratteri di grandi dimensioni, come i character set giapponesi, cinesi e coreani, hanno la stessa larghezza. Questi caratteri prototipo specificano la larghezza dei caratteri con lunghezze di byte variabili. I campi di kerning e code non sono disponibili per le voci di carattere prototipo. Queste voci si applicano a tutti i caratteri non esplicitamente definiti nella sezione charset. Si suppone che la stampante o il codice tipografo per i caratteri gestiti attraverso i caratteri prototipo sia lo stesso del codice di input per il carattere dopo la conversione da parte della funzione iconv . Di seguito sono riportate le definizioni di carattere prototipo:
| Elemento | Descrizione | |
|---|---|---|
| X0 | Larghezza | Larghezza di tutti i caratteri che restituiscono un valore di 0 per csid (). |
| X1 | Larghezza | Larghezza di tutti i 1 - byte caratteri non definiti altrove. |
| X1 | Larghezza | Larghezza di tutti i caratteri che restituiscono un valore di 1 per csid (). |
| X2 | Larghezza | Larghezza di tutti i 2 - byte caratteri non definiti altrove. |
| X i | Larghezza | Larghezza di tutti i caratteri che restituiscono un valore di i per csid (). |
| X3 | Larghezza | Larghezza di tutti i 3 - byte caratteri non definiti altrove. |
| X4 | Larghezza | Larghezza di tutti i 4 - byte caratteri non definiti altrove. |
Ad esempio, le seguenti definizioni di caratteri prototipo si applicano ai set di caratteri giapponesi (sia IBM-932 che IBM-eucJP ):
X0 : alphanumeric characters
X1 : JIS level 1 and 2 Kanji characters in JISX0208.1990
X2 : Katakana characters
X3 : IBM selected charactersFile
| Elemento | Descrizione |
|---|---|
| /usr/lib/font/devNomefile/DESC.out | Contiene il file di descrizione per fototiposetter specificato dalla variabile Nome . |
| Directory /usr/lib/font/devNome/bitmaps | Contiene file bitmap. |
| /usr/lib/font/devNome/Font.out file | Contiene il file di descrizione del font per fototiposetter specificato dalla variabile Nome . |