XeTeX
XeTeX est un logiciel de mise en page dérivé de TeX qui utilise Unicode et les technologies modernes de polices de caractères telles que OpenType et Apple Advanced Typography. Initialement développé pour Mac OS X, il est maintenant multiplate-forme. Les fichiers sources sont, par défaut, en UTF-8.
Développé par | Jonathan Kew |
---|---|
Première version | |
Dernière version | 0.9999.3 () |
Dépôt | sourceforge.net/p/xetex/code/ci/master/tree et git.code.sf.net/p/xetex/code |
Écrit en | C++ et C |
Système d'exploitation | Type Unix |
Type | mise en page |
Licence | Licence X11 |
Site web | http://xetex.sourceforge.net/ |
Historique
modifierXeTeX est publié initialement seulement pour Mac OS X en avril 2004, avec l’implémentation du support pour Unicode et AAT. En 2005, le support pour OpenType est rajouté. Durant la conférence BachoTeX 2006, une version pour Linux est annoncée, qui est portée pour Windows par Akira Kakuto quelques mois plus tard.
XeTeX est inclus dans la distribution TeX Live 2007 pour les principales plateformes, ainsi que dans MiKTeX à partir de la version 2.7. Lors de l’inclusion dans TeXLive, XeTeX est compatible avec la plupart des macro des paquets LaTeX, et les polices de caractères OpenType, TrueType et PostScript, sans configuration particulière. La version 0.998, annoncée lors de BachoTeX 2008, apporte le support de la normalisation Unicode via la macro \XeTeXinputnormalization
. La version 0.9999 sort en mai 2013, et change quitte le moteur de rendu ICU au profit de HarfBuzz pour les rendus OpenType, Graphite2 pour les rendus Graphite, et choisit Core Text pour remplacer ATSUI sur Mac OS X.
Mode de fonctionnement
modifierXeTeX génère le document de sortie, au format PDF, en deux étapes à partir du fichier source LaTeX. Au cours de la première partie du traitement, un fichier DVI est créé, qui est ensuite converti en PDF par un pilote.
Dans le cas du fonctionnement par défaut, le fichier DVI est envoyé directement au pilote PDF, sans produire de fichiers intermédiaires consultables par l’utilisateur. Il est possible d’exécuter seulement la première étape et de sauvegarder le DVI.
Pour générer le PDF dans la seconde étape, deux pilotes sont disponibles :
- xdv2pdf, basé sur les frameworks ATSUI et QuickTime, qui fonctionne uniquement avec Mac OS X,
- xdvipdfmx, une version modifiée de dvipdfmx utilisant FreeType, et qui fonctionne sur toutes les plateformes.
À partir de la version 0.997, le pilote par défaut est xdvipdfmx pour toutes les plateformes. Puis, à partir de la version 0.9999, xdv2pdf n’est plus supporté, car son développement a cessé[1].
XeTeX fonctionne avec les macros LaTeX et ConTeXt. Pour LaTeX, la commande associée est xelatex
. Le paquet fontspec
est généralement appelé pour sélectionner la police du document, et permettre aux polices choisies d’être nommées et réutilisées. Ce paquet permet également d’utiliser différents types de ligatures typographiques[2]. L’utilisation du paquet arabxetex
permet le rendu des langues s’écrivant de droite à gauche[3].
Exemple
modifierCeci est un exemple de source XeTeX avec le rendu. La police utilisée est Linux Libertine.
\documentclass[11pt]{article}
\usepackage{fontspec}
\usepackage{xltxtra}
\setmainfont[Mapping=tex-text]{Linux Libertine O}
\begin{document}
\section{Unicode support}
\subsection{English}
All human beings are born free and equal in dignity and rights.
\subsection{Íslenska}
Hver maður er borinn frjáls og jafn öðrum að virðingu og réttindum.
\subsection{Русский}
Все люди рождаются свободными и равными в своем достоинстве и
правах.
\subsection{Tiếng Việt}
Tất cả mọi người sinh ra đều được tự do và bình đẳng về nhân phẩm và
quyền lợi.
\subsection{Ελληνικά}
Ὅλοι οἱ ἄνθρωποι γεννιοῦνται ἐλεύθεροι καὶ ἴσοι στὴν ἀξιοπρέπεια
καὶ τὰ δικαιώματα.
\section{Legacy syntax}
When he goes---``Hello World!''\\
She replies—“Hello dear!”
\section{Ligatures}
\fontspec[Ligatures={Common, Historic}]{Linux Libertine O Italic}
\fontsize{12pt}{18pt}\selectfont Questo è strano assai!
\section{Numerals}
\fontspec[Numbers={OldStyle}]{Linux Libertine O}Old style: 1234567\\
\fontspec[Numbers={Lining}]{Linux Libertine O}Lining: 1234567
\end{document}
|
À noter que le package xltxtra est désormais considéré comme redondant par rapport au package fontspenc notamment, qui permet de gérer les différents typographies comme Open Type ou Apple Advanced Typography.
Ligatures historiques
modifierUn autre exemple, avec des ligatures à l'ancienne :
Notes et références
modifier- (en) Khaled Hosny, « [XeTeX] Future of xdv2pdf driver on Mac », (consulté le )
- (en) Will Robertson, « The fontspec package » [PDF], sur ctan.org, (consulté le )
- (en) « Documentation d’ArabTeX » (consulté le )
- (en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « XeTeX » (voir la liste des auteurs).