Quand la police a du caractère

par Emmanuel Chaput chaput@ensica.fr


Qui n'a pas réver un jour de dessiner sa propre police de caractères pour écrire ses oeuvres ? Si, comme moi, cette idée vous a un jour effleuré, vous vous êtes surement fait, comme moi, la réflexion suivante «Ce doit être trés difficile, et puis je ne suis pas assés doué, alors ...». Il est clair que je ne peux rien pour le second point (si quelqu'un y peut quelquechose, merci de me contacter) ; en revanche, contrairement aux idées reçues, il y a un moyen simple de créer ses fontes et de les utiliser avec LaTeX. Attention, pas question ici de créer des fontes complètes ni d'atteindre la qualitée des fontes déjà disponibles, les outils que nous allons utiliser sont trop simples ; il s'agit simplement de dessiner quelques caractères, des logos par exemple.

Dessin des caractères

Il nous faut, dans un premier temps, dessiner chaque caractère de notre future police avec l'utilitaire xfig. La figure suivante montre l'élaboration d'un tel caractère (je vous avais prévenu, cette méthode ne rend pas bon en dessin).

Dessin d'un caractère avec Xfig
Dessin d'un caractère avec xfig.

Nous supposerons ici que nous avons dessiner 3 caractères dans les fichiers Smiley1.fig, Smiley2.fig et Smiley3.fig.

Construction de la fonte

Il nous faut maintenant construire une fonte à partir de l'ensemble de nos caractères. Pour cela, nous allons utiliser l'utilitaire fig2MF écrit par Anthony Starks. Il s'agit d'un «simple petit» programme C qui traduit un ensemble de fichiers fig en un fichier mf (format des fontes géré par l'utilitaire MetaFont de Donald Knuth).

Je ne sais plus trop où j'ai récupéré cette bète, mais autant que je sache, elle est trouvable sur les archives CTAN dans le répertoire graphics. Si vous l'y trouvez pas, un petit moteur de recherche s'impose !

Nous lançons donc la commande suivante :


 fig2mf -top=4.5 -xscale=0.02 -yscale=0.02 Smiley?.fig > FonteSmileys.mf

Les différentes options reconnues par fig2mf sont décrites dans la page de manuel qui l'accompagne, elles permettent essentiellement de centrer le dessin afin d'obtenir un positionnement et une taille corrects des caractères.

Compilation de la fonte

Nous voila dans les terres du grand Knuth. Nous allons devoir compiler notre fonte, et ce grâce à la commande suivante :


 mf "\mode=localfont ; input FonteSmileys"

Je ne commenterai pas plus cette commande, invitant les plus curieux à se pencher sur le MetaFontBook, beaucoup plus accesible (?) que le TeXBook.

Utilisation

Le grand moment approche, nous allons pouvoir tester notre fonte ! Ecrivons pour cela le petit document LaTeX suivant :


\documentclass{article}
\newfont{\smileys}{FonteSmileys}
\begin{document}
   Le sourire : {\smileys \char33},
   Le doute : {\smileys \char34},
   La tristesse : {\smileys \char35}.
\end{document}

Puis compilons-le avec notre commande LaTeX favorite, si tout se passe bien, nous obtenons par exemple :
Le sourire : ,
Le doute : ,
La tristesse : .

Et voila, le tour est joué... Il est clair que ce mini-article n'est qu'une brève présentation du sujet. A vous de découvrir les quelques options de fig2mf et de jouer un peu avec pour parfaire vos caractères. Cela dit, encore une fois, le but d'une telle manipulation n'est pas de réaliser de véritables fontes, mais plutôt, comme ici, quelques petits caractères visant à égayer le texte, alors amusez-vous bien .