troff Font File Format
Zweck
Gibt Beschreibungsdateien für den Befehl Troff an.
Beschreibung
Für jeden Fotosatzsatz, den der Befehl Troff unterstützt und der auf Ihrem System verfügbar ist, gibt es ein Verzeichnis, das Dateien enthält, die den Fotosatzsatz und seine Schriftarten beschreiben. Dieses Verzeichnis heißt /usr/lib/font/devName, wobei die Variable Name den Namen des Phototypesetters angibt.
Die ASCII-Datei DESC im Verzeichnis /usr/lib/font/devName im Quellenverzeichnis des Befehls troff beschreibt die Merkmale des mit der Variablen Name angegebenen Phototypesetters. Eine binäre Version dieser Datei befindet sich in der Datei /usr/lib/font/devName/DESC.out . Jede Zeile dieser ASCII-Datei beginnt mit einem Wort, das ein Merkmal angibt, gefolgt von entsprechenden Kennungen. Leerzeilen und Zeilen, die mit dem Nummernzeichen (#) beginnen, werden ignoriert.
Für viele Schriftartenetter werden heruntergeladene Schriftarten allgemein unterstützt. Die Bitmaps für diese Schriftarten werden im Verzeichnis /usr/lib/font/devName/bitmaps gespeichert. Jedes Schriftgrößenpaar wird in einer Datei mit einem Namen im Format Schriftartname-Größe.PKgespeichert. Beispiel:
B-24.pk Diese Bitmaps werden im PK-Format für gepackte Schriftarten gespeichert, das von TeX und den zugehörigen Nachprozessoren verwendet wird. Diese Bitmaps sind leicht generierte, sofort verfügbare Programme, wie z. B. METAFONT, oder einfach aus anderen Formaten konvertiert.
Neben den Bitmapdateien ist eine Troff -Schriftartdatei, wie hier beschrieben, für jede Schriftart erforderlich. Im Feld unitwidth dieser Datei wird die Breite jedes Zeichenbitmap in Einheiteneinheiten angegeben.
Die gültigen Zeilen für die Datei DESC (ESC) lauten wie folgt:
| Element | Beschreibung |
|---|---|
| Ans Zahl | Auflösung des Geräts in Basisinkrementen pro Zoll. |
| Einheitenbreite Zahl | Punktgröße, in der alle Breitentabellen in den Schriftartbeschreibungsdateien angegeben werden. Der Befehl Troff skaliert automatisch die Breite von der Größe Einheitenbreite auf die Punktgröße, mit der er arbeitet. |
| Sizescale Zahl | Skalierung für Bruchpunktgrößen. Der Wert der Variablen Zahl ist 1. Die Zeile Sizescale wird derzeit nicht verwendet. |
| Papierbreite Zahl | Breite des Papiers in Grundschritten. |
| Papierlänge Zahl | Länge des Papiers in Grundschritten. |
| Größte Schriftart Zahl | Maximale Anzahl Zeichen in einer Schriftart. |
| Größen Number1 Number2... | Liste der verfügbaren Punktgrößen für den Satztyp, beendet mit 0. |
| Schriftarten NumberName... | Anzahl der anfänglichen Schriftarten, gefolgt von den ASCII-Namen der Schriftarten. Beispiel: |
| codierter_Zeichensatz codesetName | Codierter Zeichensatz für den jeweiligen Drucker oder Drucker, wobei CodesetName ein gültiger Name für den codierten Zeichensatz ist, der mit dem Befehl iconv verwendet werden kann. Der angegebene codierte Zeichensatz wird verwendet, um Zeicheneinträge im Zeichensatzabschnitt von Schriftartbeschreibungsdateien zu definieren. Beispiel:Der Befehl troff verwendet den angegebenen CodesetName und den von der aktuellen Ländereinstellung implizierten codierten Zeichensatz, um festzustellen, ob Konvertierungen codierter Zeichensätze für die Eingabezeichen erforderlich sind. Die Funktion Symbolv wird verwendet, um bei Bedarf die Konvertierung des codierten Zeichensatzes auszuführen. |
| Zeichensatz | Das letzte Schlüsselwort in der Datei befindet sich in einer separaten Zeile. Es folgt die Liste der Sonderzeichennamen für diese Einheit. Namen werden durch ein Leerzeichen oder eine neue Zeile getrennt. Die Liste kann so lang wie nötig sein. Namen, die nicht in dieser Liste enthalten sind, sind in den Schriftartbeschreibungsdateien nicht zulässig. |
| HOR Zahl | Kleinste Einheit der horizontalen Bewegung. |
| Vert Zahl | Kleinste Einheit der vertikalen Bewegung. Die Linien HOR und Vert beschreiben die Beziehungen zwischen Bewegungen in horizontaler und vertikaler Richtung. Wenn das Gerät beispielsweise in einzelnen Basisinkrementen in beiden Richtungen bewegt wird, haben die Zeilen HOR und Vert den Wert 1. Wenn die vertikale Bewegung nur in Vielfachen von zwei Basiseinheiten auftritt und die horizontale Bewegung nur in einer Basiseinheit, ist Vert 2 und HOR 1. |
Für jede vom Phototypesetter unterstützte Schriftart gibt es auch eine ASCII-Datei mit demselben Namen wie die Schriftart (z. B. R, I, CW), die sie beschreibt. Das Format einer Schriftartbeschreibungsdatei lautet wie folgt:
| Element | Beschreibung |
|---|---|
| Name Name | Name der Schriftart, z. B. R oder CW. |
| Interner Name Name | Interner Name der Schriftart. |
| spezial | Setzt das Flag, das angibt, dass die Schriftart speziell ist. |
| Ligaturen Name ...0 | Setzt das Flag, das anzeigt, dass die Schriftart Ligaturen hat. Die Liste der Ligaturen folgt und wird mit 0 (Null) beendet. Akzeptierte Ligaturen sind ff fi fl ffi ffl. |
| Leerzeichenbreite Zahl | Gibt die Breite des Bereichs an, wenn ein anderer Wert als der Standardwert (1/3 eines em-Bereichs) gewünscht wird. |
| Zeichensatz | Der Zeichensatz muss am Ende stehen. Jede Zeile nach dem Wort Zeichensatz beschreibt ein Zeichen in der Schriftart. Jede Zeile hat eines von zwei Formaten:ODER Dabei ist der Wert desNameFeld ist entweder ein Einzelbytezeichen oder ein Sonderzeichenname aus der Liste in der Datei DESC (ESC) . DerWidthist in Basisinkrementen angegeben. DerKerningFeld ist 1 , wenn das Zeichen unter die Zeile abfällt, 2 , wenn es über den Buchstaben steigt.`a'und 3 , wenn beide auf-und absteigen. DerCodeFeld ist die Zahl, die an den Typetter gesendet wird, um das Zeichen zu erzeugen. Für eine NLS -SchriftartCodeFeld kann eine Mehrbytefolge sein. Für Schriftarten von Ausgabeeinheiten mit erweiterten ZeichenCodeFeld kann eine Mehrbytefolge sein, die mit einem doppelten Anführungszeichen beginnt und endet. In der Sequenz können Steuerzeichen oder nicht druckbare Zeichen durch die folgenden Escapezeichenfolgen dargestellt werden: |
| \n | Erzeugt eine neue Zeile |
| \r | Erzeugt eine Rückgabe. |
| \t | Erzeugt eine Registerkarte. |
| \b | Erzeugt einen Rückschritt. |
| \" | Erzeugt ein Anführungszeichen. |
| \xdd | Erzeugt eine Hexadezimalzahl, wobeiddbesteht aus zwei Hexadezimalziffern. |
| \ooo | Erzeugt eine Oktalzahl, wobeiooosind drei Oktalziffern. Das zweite Format,Name "wird verwendet, um anzuzeigen, dass das Zeichen mehrere Namen hat. Die doppelten Anführungszeichen geben an, dass dieser Name dieselben Werte wie die vorherige Zeile hat. DerKerningundCodeFelder werden nicht verwendet, wenn der Wert derWidthFeld ist ein Anführungszeichen. Die Gesamtzahl der verschiedenen Zeichen in dieser Liste sollte nicht größer als der Wert der Zeile Größte Schriftart in der Datei DESC (ESC) sein. |
Die Dateien DESC.out und Font.out wurden als Ergebnis der Ausführung des Programms makedev für die Datei DESC erstellt.
Prototypzeichen werden für den Zeichensatzabschnitt der Schriftartentabelle für Schriftarten in großen Zeichensätzen bereitgestellt. Die meisten Zeichen in großen Zeichensätzen (z. B. japanische, chinesische und koreanische Zeichensätze) haben dieselbe Breite. Diese Prototypzeichen geben die Breite von Zeichen mit variabler Bytelänge an. Die Felder für Zeichenunterteilung und Code sind für Prototypzeicheneinträge nicht verfügbar. Diese Einträge gelten für alle Zeichen, die nicht explizit im Zeichensatzabschnitt definiert wurden. Es wird angenommen, dass der Drucker-oder Typettercode für Zeichen, die durch Prototypzeichen verarbeitet werden, mit dem Eingabecode für das Zeichen nach der Konvertierung durch die Funktion Symbolv identisch ist. Im Folgenden sind die Zeichendefinitionen für Prototypen aufgeführt:
| Element | Beschreibung | |
|---|---|---|
| X0 | Breite | Breite aller Zeichen, die den Wert 0 für csid ()zurückgeben. |
| X1 | Breite | Breite aller 1-Byte-Zeichen, die nicht an anderer Stelle definiert sind |
| X1 | Breite | Breite aller Zeichen, die den Wert 1 für csid ()zurückgeben. |
| X2 | Breite | Breite aller 2-Byte-Zeichen, die an anderer Stelle nicht definiert sind |
| XI | Breite | Breite aller Zeichen, die den Wert I für csid ()zurückgeben. |
| X3 | Breite | Breite aller 3-Byte-Zeichen, die nicht an anderer Stelle definiert sind |
| X4 | Breite | Breite aller 4-Byte-Zeichen, die nicht an anderer Stelle definiert sind. |
Beispielsweise gelten die folgenden Prototyp-Zeichendefinitionen für die japanischen Zeichensätze (sowohl IBM-932 als auch IBM-eucJP ):
X0 : alphanumeric characters
X1 : JIS level 1 and 2 Kanji characters in JISX0208.1990
X2 : Katakana characters
X3 : IBM selected charactersDateien
| Element | Beschreibung |
|---|---|
| /usr/lib/font/devName/DESC.out Datei | Enthält die Beschreibungsdatei für Phototypesetter, die durch die Variable Name angegeben wird. |
| /usr/lib/font/devName/bitmaps | Enthält Bitmapdateien. |
| /usr/lib/font/devName/Schriftart.out Datei | Enthält die Schriftartbeschreibungsdatei für Phototypesetter, die durch die Variable Name angegeben wird. |