Langues dans un alphabet non latin et polices de caractère

lundi 22 octobre 2012, mise à jour mardi 17 février 2015, par Maïeul
Suivre la vie du site RSS 2.0 Forum

En préparant une formation pour un collègue, je me suis rendu compte que mon livre pouvait être un peu elliptique sur certains aspects de la gestion du polylinguisme avec LaTeX, notamment lorsqu’on l’on à affaire à des langues s’écrivant avec des caractères non latins.

Unicode ne suffit pas

La norme Unicode permet de stocker tous les caractères existants sur Terre [1].

Néanmoins Unicode ne définit pas comment s’affichent les caractères : ce travail est confiée aux polices.

Or il n’existe pas de polices contenant l’ensemble des caractères Unicodes. Il est donc parfois utile de définir une police différente pour une langue différente.

Exemple

Soit le code suivant :

Le premier mot du livre de la Genèse est : \texthebrew{בְּרֵאשִׁ֖ית}. 

Si je choisie d’utiliser comme police principale la police Linux Libertine [2], j’ai un problème : celle-ci ne supporte pas encore toutes les subtilités de l’hébreu biblique.

Ainsi j’obtiens le résultat suivant, assez inesthétique :

Mot hébreu avec Linux Libertine : bof, bof.

Évidemment je pourrais trouver une police gérant aussi l’hébreu, par exemple la classique Times New Roman :

Mot hébreu avec Times New Roman : mieux

Cependant, je peux préférer la Linux Libertine pour les caractères latins.

Varier la police

La solution est donc de prendre une police particulière pour l’hébreu, par exemple sur le site du SIL.

Il faut alors utiliser fontspec, qui permet de définir des nouvelles familles de caractères, en combinaison avec polyglossia, qui permet de gérer les changements de langue.

Pour cela, on définit une famille \<lang>font.

Donc pour avoir l’hébreu affiché avec la police Ezra SIL, je crée une nouvelle famille de polices :

\newfontfamily\hebrewfont[Script=Hebrew]{Ezra SIL}

Grâce à cela, la police change automatiquement lors de l’appel à \hebrewtext. N’oubliez pas cependant le Script=Hebrew. Il permet à XeLaTeX, lorsqu’il compose l’affichage final, d’utiliser les bon paramètres pour appeler les caractères de la police et par conséquent d’avoir un placement correct de ces caractères, notamment les niquud.

Mot hébreu avec la police Ezra Sil : un problème de taille

Régler la police

Comme vous pouvez constater, il y a un problème de taille. En effet, deux polices différentes n’ont pas, pour un même nombre de points, la même taille physique.

La solution est alors de dire à fontspec d’appliquer un redimensionnement sur la police. Dans le cas présent, nous souhaitons utiliser la police à 80 % de sa taille :

\newfontfamily\hebrewfont[Scale=0.8,Script=Hebrew]{Ezra SIL}
Mot hébreu avec la police Ezra Sil et une taille correcte

P.-S.

En problème connexe se pose la manière de saisir les caractères Unicodes. Je vous promet de vous écrire bientôt des articles pour expliquer comment créer son propre pilote de clavier sous Mac Os X...

Notes

[1Du moins tout les caractères ayant été suffisamment étudiés pour pouvoir être décrits dans un certain formalismes. Ainsi certaines rares sont encore en cours d’intégration à Unicode...

[2Via \setmainfont{Linux Libertine O}.

Vos commentaires

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Acheter XeLaTeX appliqué aux sciences humaines

À propos

Titulaire d’un doctorat en théologie et d’un doctorat en histoire, sous la direction conjointe de Frédéric Amsler et d’Élisabeth_Malamut, je commence à partir du 1er août 2017 un travail d’édition critique des Actes de Barnabé.

Dans le cadre de la rédaction de mon mémoire de master puis de ma thèse de doctorat, j’ai été emmené à utiliser LaTeX, et j’ai donc décider de partager mes techniques. En effet, au cours de mes premiers apprentissages, j’ai découvert que les ressources indiquant les outils pour l’utilisation de LaTeX en sciences humaines étaient rares. Ceci m’a conduit à maintenir ou créer plusieurs packages LaTeX et à donner plusieurs formations.

J’ai reçu en 2018 le prix DANTE e.V pour mon travail autour de LaTeX, en particulier autour de reledmac et reledpar.

Par ailleurs, je suis membre actif de la communauté SPIP, au sein de laquelle j’administre le site Spip-Contrib. Je propose sur ce site quelques notes sur SPIP, en général à destination de webmestre.

Il m’arrive également de faire un petit peu de Python, de temps en temps.

Enfin, je tiens un blog de réflexions politiques et religieuses.

Maïeul