Vous n'utilisez pas de serveur de polices.
Pourquoi ne pas utiliser un serveur de polices ? Il suffit de récupère le rpm sur rufus.w3.org !
Le cas de ghostscript (5.10).
Là, c'est enfantin : il suffit de savoir où est installé le fichier Fontmap de ghostscript (rpm −ql ghostscript | grep Fontmap devrait fournir une
réponse exploitable). Supposons que ce fichier soit dans /usr/share/ghostscript/5.10/Fontmap. On édite ce fichier et on ajoute les lignes :
/nom−de−police1 (/usr/share/fonts/type1/police1.pfa) ;
/nom−de−police2 (/usr/share/fonts/type1/police2.pfb) ;
/nom−de−police3 (/usr/share/fonts/ttf/police3.ttf) ;
Rien de bien compliqué ! La seule chose importante, c'est que je crois qu'il faut que les nom doivent être sans aucun espace ! Puis dans n'importe quel
fichier Postscript il suffira de préciser /nom−de−police1 pour utiliser la police1. évidemment, c'est bien joli, mais qui a déjà écrit un fichier
Postscript avec ses petites mains ? Donc, passons à StarOffice qui va générer nos fichiers Postscript.
Pour GS, j'ai rencontré des problèmes avec quelques polices : mais elles sont très rares.
Le cas de StarOffice (5.1a).
Pour ce qui est de l'affichage, toutes les applications de StarOffice (sauf StarWriter) doivent déjà être capable de fonctionner avec nos nouvelles
polices. Pour l'impression et StarWriter : c'est une autre paires de manches.
La configuration de StarOffice peut être un véritable cauchemar, en effet ni StarDivision, ni Sun n'ont jamais été très clairs concernant ce point
particulier. De plus dans les listes de diffusions, je n'ai pas trouvé beaucoup de chose expliquant tout.
La configuration de StarOffice passe par plusieurs fichiers de configuration (dont un fichier particulier puisque c'est un répertoire !). Le format de fichiers
de StarOffice est propriétaire (ouh les vilains!), mais heureusement pour nous pas le format des fichiers de configuration qui nous intéresse.
Réglons d'un coup le cas de StarWriter : quand le problème d'impression aura été réglé il n'en subsistera plus aucun, car StarWriter ne propose que les
polices imprimables !
Le fichier SGENPRT.PS.
Donc, il nous suffit de faire en sorte que StarOffice (= SO) soit capable d'imprimer nos polices. Je ne décrirai ici que le cas du conducteur de
périphérique (driver) Generic Printer en liaison avec Ghostscript. Il est certain que beaucoup de choses s'appliquent au cas des imprimantes Postscript,
mais je ne sais pas lesquels : offrez moi une imprimante Postscript et j'essaierai de trouver ;).
Pour imprimer, il faut que le conducteur de périphérique soit au fait de nos nouvelles polices. Le fichier conduisant ghostscript est :
$SOPATH/xp3/ppds/SGENPRT.PS (ou $SOPATH est le nom du répertoire contenant votre installation de SO, le répertoire principal, pas le répertoire
utilisateur).
Il suffit d'ajouter à ce fichier, les lignes suivantes :
*Font nom−de−police1: Standard "(001.000)" Standard ROM
*Font nom−de−police2: Standard "(001.000)" Standard ROM
*Font nom−de−police1: Standard "(001.000)" Standard ROM
Attention : nom−de−police1 DOIT être exactement le même nom que pour ghostscript !
Je ne sais pas à quoi correspond exactement le 001.000 mais il semblerait vu l'analyse que j'ai faite des fichiers *.afm dont nous verrons plus loin
l'intérêt, il semblerait que ce soit une taille de polices standard (à voir...).
Bon, maintenant le conducteur d'imprimante de SO sait que l'imprimante sait imprimer ces polices, mais SO ne sait pas quel est le rapport entre ces
polices d'imprimante et les polices écran.
Le fichier psstd.fonts.
Faire le lien entre polices écran et polices d'imprimante c'est le rôle du fichier $SOPATH/xp3/psstd.fonts. Cela ne pose pas de problème
particulier, il suffit d'ajouter à ce fichier des lignes du type :
EUNormal, −monotype−EU Normal−medium−r−normal−−%d−%d−%d−%d−p−0−iso8859−1
Même si elles paraissent complexe, il n'est pas très compliqué de les deviner, mais c'est pas agréable à faire : il faut, pour chaque police, aller chercher
dans le fichier fonts.dir correspondant la ligne décrivant la police X, on note le nom xfld. Puis on ajoute la ligne :
nom−de−police1, nom−xfld
où nom−xfld est le nom de police X où l'on a remplacé les champs 7, 8, 9 et 10 par %d, pour permettre à SO de choisir la taille des dites polices
(quand je dit "pour", je veux dire qu'il est obligatoire que 4 champs du nom xfld soit des %d !).
NDJCC : tiens, ils auraient pas programmé SO en C ou C++ ? ;−)
Eh bien, on n'est pas sorti de l'auberge, quand il va s'agir d'ajouter 250 polices ! (patience, patience ...)
Le cas de votre serveur X.
30 Configuration du système X Window
Comments to this Manuals