diff --git a/logiciels/latex/xetex.tml b/logiciels/latex/xetex.tml new file mode 100644 index 0000000..9618386 --- /dev/null +++ b/logiciels/latex/xetex.tml @@ -0,0 +1,161 @@ + + + + + Polices et langues exotiques avec XeTeX + + +

Polices et langues exotiques avec XeTeX

+ +
+

Cette page a pour but de montrer comment on peut utiliser le + programme XeTeX pour utiliser facilement des polices extérieures et + taper du texte dans des systèmes d'écriture latins ou non latins.

+
+ +

Qu'est-ce que XeTeX

+ +

XeTeX est un programme basé sur TeX, qui en est une variante (les + fichiers écrits pour l'un pour l'autre ne seront pes nécessairement + compatibles). Il a d'abord été conçu pour fonctionner avec Mac OS X + mais fonctionne aujourd'hui avec une grande diversité de systèmes.

+ +

Un de ses grands avantages est de gérer tout à fait correctement les + fichiers encodés en UTF-8, et les polices TrueType et OpenType, ce qui + permet de bénéficier des mêmes possiblités techniques que les logiciels + de traitement de texte pour produire des documents, qu'ils soient + écrits en arménien, en araméen, en japonais, en lituanien ou en + persan.

+ +

Compiler un fichier avec XeLaTeX

+ +

De la même manière qu'on utilise la commande latex pour + compiler les fichiers écrits pour LaTeX, on utilise la commande + xelatex pour compiler les fichiers LaTeX destinés à + profiter des fonctionnalités de XeTeX.

+ +

La commande xelatex s'utilise comme la commande + pdflatex.

+
xelatex fichier.tex
+

L'option -no-pdf permet de retrouver le comportement de la + commande latex qui ne produit pas un fichier directement + lisible mais un fichier intermédiaire de la forme + fichier.xdv. La commande xdvipdfmx sert à + convertir les fichiers XDV en fichers PDF.

+ +

Les principales différences avec LaTeX

+ +

XeTeX accepte les fichiers encodés en UTF-8. Pour cela, ajouter au + début du document la commande

+
\XeTeXdefaultencoding utf-8
+

pour en tenir compte.

+ +

XeLaTeX possède un certain nombre de paquets spécifiques, et au + contraire ne doit pas être utilisé avec certains paquets traditionnels + de LaTeX.

+ + +

Comment faire

+ +

Préparation

+ +

Avant de commencer, il y a un pré-requis qui n'est pas spécifique à + LaTeX : savoir taper un texte quelconque, dans la langue qui vous + intéresse, en Unicode. Heureusement, nous avons une documentation sur + les éditeurs en + Unicode, que nous vous invitons à lire avant d'aller plus loin si + ce n'est déjà fait.

+ +

Tout ce que vous avez à faire maintenant, c'est de créer votre + fichier LaTeX avec votre éditeur en Unicode. Nous allons voir dans un + instant ce qu'il faut mettre dans le préambule.

+ +

Ce qu'il faut écrire

+ +

Les fichiers déjà écrits pour LaTeX peuvent nécessiter quelques + adaptations : grâce à votre éditeur de texte favori, enregistrez votre + fichier au format UTF-8, et remplacez les lignes

+
\usepackage[T1]{fontenc}
+\usepackage[utf8]{inputenc}
+

par

+
\XeTeXdefaultencoding utf-8
+\usepackage{fontspec}
+ +

Choisir une police de caractères

+ +

Par défaut, XeTeX utilisera les polices Latin Modern qui ont un + aspect semblable aux polices standard de LaTeX. Mais si vous voulez en + changer, en particulier pour afficher du texte dans d'autres écritures, + il faudra se procurer une police capable de les afficher. Prenons par + exemple la police FreeSerif. La commande suivante permet de + sélectionner cette police par défaut pour l'ensemble du document.

+
\setmainfont[Mapping=tex-text,Ligatures=Common]{FreeSerif}
+

Les options indiquées permettent respectivement d'utiliser certaines + suites de caractères pour les caractères spéciaux (comme + --- pour —), et d'utiliser les ligatures standard + de la police si celle-ci en possède (notamment fi et ffi).

+ +
+

Attention, certaines anciennes polices, datant d'avant + l'introduction du standard Unicode pour l'encodage des caractères, + permettent d'afficher des écritures non latines, en remplaçant les + dessins des caractères latins par ceux des caractères grecs : elles + permettent ainsi d'«écrire en grec» avec un clavier latin (comme la + police Symbol). L'usage de ces polices de caractères est à + proscrire : l'utilisation de systèmes Unicode permet aux fichiers de + reproduire fidèlement les caractères présents dans le texte.

+
+ +

Il est possible que la police choisie par défaut ne convienne pas à + tous les usages, par exemple pour écrire en chinois. Si cela s'avérait + nécessaire, rien de plus simple : il suffit de déclarer une nouvelle + police avec la commande suivante

+
\newfontfamily\cjkfont[Script=CJK]{AR PL ZenKai Uni}
+

Cette commande déclare une nouvelle police utilisable avec la + commande \cjkfont (il s'agit de la police AR PL ZenKai + Uni). On pourra alors l'utiliser sous la forme suivante :

+
En chinois, «Chine» s'écrit {\cjkfont 中国}.
+ +

Un exemple

+ +
\documentclass{article}
+\XeTeXdefaultencoding utf-8
+\usepackage{fontspec}
+\defaultfontfeatures{Mapping=tex-text}
+\setmainfont{Linux Libertine O}
+\usepackage[margin=4cm]{geometry}
+\usepackage{amsthm}
+
+\title{Οἱ πρῶτοι ἀριθμοί}
+\date{20 Μαρτίου 2008}
+
+\begin{document}
+
+\maketitle
+
+\textbf{Θεώρημα 1.} «Οἱ πρῶτοι ἀριθμοὶ πλείους εἰσὶ παντὸς τοῦ προτεθέντος
+πλήθους πρώτων ἀριθμῶν.» (\emph{Στοιχεία}, Εὐκλείδης). Ἄρα, τὸ σύνολο τῶν
+πρώτων ἀριθμῶν εἶναι ἄπειρο. 
+
+\textsc{Ἀπόδειξη. } Ἔστω $P$ ἕvα πεπερασμένο σύνολο $\{p_1, \dots, p_k\}$
+πρώτων ἀριθμῶν. Θεωροῦμε τὸv ἀκέραιον ἀριθμόν $N := p_1\cdots p_k + 1$, ποὺ
+εἶναι μεγαλύτερος τοῦ $1$. Τότε ὑπάρχει ἕνα πρῶτο διαιρέτη $q$ τοῦ $N$. 
+Ἄv $q = p_i$, τότε $q | N - p_1\cdots p_k$, ἄρα $q | 1$, καὶ αὑτὸ εἶναι
+ἄτοπο. $\qed$
+
+\end{document}
+ +
+Auteur : Rémy Oudompheng. +Dernière modification le . +
+ + +