Format de fichier de polices troff
Objectif
Indique les fichiers de description de la commande troff .
Descriptif
Pour chaque phototypesetter pris en charge par la commande troff et disponible sur votre système, il existe un répertoire qui contient des fichiers décrivant le phototypesetter et ses polices. Ce répertoire est nommé /usr/lib/font/devName, où la variable Name indique le nom de la phototypesetter.
Le fichier ASCII DESC du répertoire /usr/lib/font/devName dans le répertoire source de la commande troff décrit les caractéristiques du phototypesetter spécifié par la variable Name . Une version binaire de ce fichier se trouve dans le fichier /usr/lib/font/devName/DESC.out . Chaque ligne de ce fichier ASCII commence par un mot qui identifie une caractéristique, suivi des spécificateurs appropriés. Les lignes vides et les lignes commençant par le signe # (dièse) sont ignorées.
Pour de nombreuses typographies, les polices téléchargées sont prises en charge de manière générale. Les bitmaps de ces polices sont stockés dans le répertoire /usr/lib/font/devName/bitmaps . Chaque paire de tailles de police est stockée dans un fichier dont le nom est au format Taille du nom de la police.pk. Par exemple :
B-24.pk Ces bitmaps sont stockés dans le format de police condensée PK utilisé par TeX et ses post-processeurs. Ces bitmaps sont facilement générés sous forme de programmes facilement disponibles, tels que METAFONT, ou facilement convertis à partir d'autres formes.
Outre les fichiers bitmap, un fichier de police troff , comme décrit ici, est requis pour chaque police de caractères. Dans la zone unitwidth de ce fichier, la largeur de chaque bitmap de caractères dans les unités de périphérique est indiquée.
Les lignes légales du fichier DESC sont les suivantes:
| Article | Descriptif |
|---|---|
| res Nombre | Résolution de l'unité par incréments de base par pouce. |
| largeur d'unité Nombre | Corps dans lequel sont indiquées toutes les tables de largeur des fichiers de description de police. La commande troff met automatiquement à l'échelle les largeurs de la taille largeur d'unité à la taille de point avec laquelle elle fonctionne. |
| taille_taille Nombre | Mise à l'échelle pour les tailles de point fractionnaire. La valeur de la variable Nombre est 1. La ligne taille_taille n'est pas utilisée actuellement. |
| largeur de papier Nombre | Largeur du papier par incréments de base. |
| longueur de papier Nombre | Longueur du papier par incréments de base. |
| police biggestfont Nombre | Nombre maximal de caractères dans une police. |
| tailles Number1 Number2... | Liste des tailles de point disponibles sur le typographe, terminée par 0. |
| polices NumberName... | Nombre de polices initiales, suivi des noms ASCII des polices. Par exemple : |
| jeu de codes codesetName | Jeu de codes pour l'imprimante ou le typographe particulier, où CodesetName est un nom de jeu de codes valide à utiliser avec la commande iconv . Le jeu de codes indiqué est utilisé pour définir des entrées de caractères dans la section de jeu de caractères des fichiers de description de police. Par exemple :La commande troff utilise le CodesetName spécifié et le jeu de codes impliqué par l'environnement local en cours pour déterminer si des conversions de jeu de codes sont nécessaires pour les caractères d'entrée. La fonction iconv est utilisée pour effectuer la conversion de jeu de codes si nécessaire. |
| jeu de caractères | Le dernier mot clé du fichier se trouve sur une ligne. Vous trouverez ci-après la liste des noms de caractères spéciaux pour cette unité. Les noms sont séparés par un espace ou une nouvelle ligne. La liste peut être aussi longue que nécessaire. Les noms ne figurant pas dans cette liste ne sont pas admis dans les fichiers de description de police. |
| hor Nombre | Plus petite unité de mouvement horizontal. |
| Vert Nombre | Plus petite unité de mouvement vertical. Les lignes hor et Vert décrivent les relations entre les mouvements dans les directions horizontale et verticale. Par exemple, si le périphérique se déplace par incréments de base uniques dans les deux sens, les lignes hor et Vert ont toutes les deux la valeur 1. Si le mouvement vertical se produit uniquement en multiples de deux unités de base et que le mouvement horizontal se produit uniquement dans une unité de base, Vert est 2 et hor est 1. |
Pour chaque police prise en charge par le phototypesetter, il existe également un fichier ASCII portant le même nom que la police (par exemple, R, I, CW) qui la décrit. Le format d'un fichier de description de police est le suivant:
| Article | Descriptif |
|---|---|
| nom Nom | Nom de la police, par exemple R ou CW. |
| Nom interne Nom | Nom interne de la police. |
| spécial | Définit l'indicateur indiquant que la police est spéciale. |
| ligatures Nom ...0 | Définit l'indicateur indiquant que la police a des ligatures. La liste des ligatures suit et se termine par un 0 (zéro). Les ligatures acceptées sont ff fi fl ffi ffl. |
| espaceidth Nombre | Indique la largeur de l'espace si une valeur autre que la valeur par défaut (1/3 d'un espace em) est souhaitée. |
| jeu de caractères | Le jeu de caractères doit arriver à la fin. Chaque ligne qui suit le mot jeu de caractères décrit un caractère dans la police. Chaque ligne possède l'un des deux formats suivants:OR où la valeur de laNameest un caractère mono-octet ou un nom de caractère spécial de la liste trouvée dans le fichier DESC . :NONE.Widthest en incréments de base. :NONE.Kerningest 1 si le caractère descend sous la ligne, 2 s'il s'élève au-dessus de la lettre`a'et 3 s'il s'élève et descend. :NONE.Codefield est le numéro envoyé au typographe pour produire le caractère. Pour une police Nls , leCodepeut être une séquence multi-octet. Pour les polices des unités de sortie à caractères étendus, laCodepeut être une séquence multi-octet qui commence et se termine par un guillemet. Dans la séquence, les caractères de contrôle ou de non-impression peuvent être représentés par les séquences d'échappement suivantes: |
| \n | Génère une nouvelle ligne. |
| \r | Génère un retour. |
| \t | Génère un onglet. |
| \b | Génère un retour arrière. |
| \" | Génère un guillemet double. |
| \xdd | Produit un nombre hexadécimal, oùddest deux chiffres hexadécimaux. |
| \ooo | Produit un nombre octal, oùoooest trois chiffres octaux. Le second format,Name ", est utilisé pour indiquer que le caractère a plusieurs noms. Les guillemets indiquent que ce nom a les mêmes valeurs que la ligne précédente. :NONE.KerningetCodeles champs ne sont pas utilisés si la valeur deWidthest un guillemet. Le nombre total de caractères différents dans cette liste ne doit pas être supérieur à la valeur de la ligne police biggestfont dans le fichier DESC . |
Les fichiers DESC.out et Font.out ont été créés suite à l'exécution du programme makedev sur le fichier DESC .
Des caractères prototypes sont fournis pour la section de jeu de caractères de la table de polices pour les polices des jeux de caractères de grande taille. La plupart des caractères des jeux de caractères de grande taille, tels que les jeux de caractères japonais, chinois et coréens, ont la même largeur. Ces caractères de prototype spécifient la largeur des caractères avec des longueurs d'octets variables. Les zones de kerning et de code ne sont pas disponibles pour les entrées de caractères de prototype. Ces entrées s'appliquent à tous les caractères non explicitement définis dans la section de jeu de caractères. Il est supposé que le code d'imprimante ou de typographie pour les caractères gérés via des caractères prototypes est identique au code d'entrée du caractère après conversion par la fonction iconv . Les définitions de caractères de prototype sont les suivantes:
| Article | Descriptif | |
|---|---|---|
| X0 | Largeur | Largeur de tous les caractères qui renvoient la valeur 0 pour csid (). |
| X1 | Largeur | Largeur de tous les caractères à 1 octet non définis ailleurs. |
| X1 | Largeur | Largeur de tous les caractères qui renvoient la valeur 1 pour csid (). |
| X2 | Largeur | Largeur de tous les caractères à 2 octets non définis ailleurs. |
| X i | Largeur | Largeur de tous les caractères qui renvoient la valeur i pour csid (). |
| X3 | Largeur | Largeur de tous les caractères à 3 octets non définis ailleurs. |
| X4 | Largeur | Largeur de tous les caractères à 4 octets non définis ailleurs. |
Par exemple, les définitions de caractères prototypes suivantes s'appliquent aux jeux de caractères japonais (à la fois IBM-932 et IBM-eucJP ) :
X0 : alphanumeric characters
X1 : JIS level 1 and 2 Kanji characters in JISX0208.1990
X2 : Katakana characters
X3 : IBM selected charactersFichiers
| Article | Descriptif |
|---|---|
| /usr/lib/font/devNom/DESC.out fichier | Contient le fichier de description de phototypesetter spécifié par la variable Nom . |
| Répertoire /usr/lib/font/devNom/bitmaps | Contient des fichiers bitmap. |
| /usr/lib/font/devNom/Font.out fichier | Contient le fichier de description de police pour le phototypesetter spécifié par la variable Nom . |