XeTeX (английское произношение «зи-тех», то есть или ) — TeX-образная система вёрстки. Поддерживает современные шрифты, например OpenType и . Создана Джонатаном Кью (Jonathan Kew) под лицензией X11, в настоящее время развивается Khaled Hosny.

Изначально разрабатывалась только для Mac OS X. Теперь доступна для всех основных платформ. Имеет встроенную поддержку Unicode. Предполагается, что входной файл имеет кодировку UTF-8.

Особенности может использовать любые шрифты, установленные в данной ОС, без настройки шрифтов TeX.

Это позволяет использовать: технологии OpenType (включая локализацию и расширения), и Graphite как альтернативные глифам и свошам; настраиваемые исторические лигатуры; изменение ширины шрифта. Также возможна вёрстка математики с использованием Unicode-шрифтов, содержащих математические расширения. Можно использовать Cambria Math как альтернативу стандартной верстке формул.

Пример Далее опишем пример. В целях читаемости он разбит на несколько кусков. Если объединить все, получится полноценный файл. Сбоку можно найти миниатюру результата выполнения такого файла в . В самом конце примера — SVG файл, показывающий тот же самый результат. Было успешно скомпилировано xelatex’ом из пакета MikTeX.

Преамбула \documentclass{article} \usepackage{polyglossia} %% загружает пакет многоязыковой вёрстки \setdefaultlanguage{russian} %% устанавливает главный язык документа %\setdefaultlanguage[babelshorthands=true]{russian} %% вместо предыдущей строки; доступны команды из пакета babel для русского языка \setotherlanguage{english} %% объявляет второй язык документа \defaultfontfeatures{Ligatures={TeX},Renderer=Basic} %% свойства шрифтов по умолчанию. Для XeTeX опцию Renderer=Basic можно не указывать, она необходима для LuaTeX \setmainfont[Ligatures={TeX,Historic}]{CMU Serif} %% задаёт основной шрифт документа \setsansfont{CMU Sans Serif} %% задаёт шрифт без засечек \setmonofont{CMU Typewriter Text} %% задаёт моноширинный шрифт

Пакет многоязыкой вёрстки polyglossia подгружает шаблоны переноса. Он необходим, если в одном документе используются несколько языков; polyglossia заменяет пакет babel, который имеет те же функции, но, начиная с версии 3.9, может использоваться с любым из существующих компиляторов, включая TeX, PdfTeX, XeTeX и LuaTeX. Приведенный выше пример должен быть изменён, если используется пакет babel: \documentclass{article} \usepackage[english,russian]{babel} %% загружает пакет многоязыковой вёрстки \defaultfontfeatures{Ligatures={TeX},Renderer=Basic} %% свойства шрифтов по умолчанию \babelfont{rm}[Ligatures={TeX,Historic}]{CMU Serif} %% задаёт основной шрифт документа \babelfont{sf}{CMU Sans Serif} %% задаёт шрифт без засечек \babelfont{tt}{CMU Typewriter Text} %% задаёт моноширинный шрифт

Пакет fontspec подготавливает загрузку шрифтов OpenType, TrueType и др. Команды \setmainfont, \setsansfont, \setmonofont производят загрузку трёх основных шрифтов, которые в обычном LaTeX'е используются для печати текста командами \textrm, \textsf и \texttt. Декларация \defaultfontfeatures объявляет общие свойства всех шрифтов, загруженных после неё. В данном примере загружаются шрифты Computer Modern Unicode, которые включены во все современные дистрибутивы TeX'а, включая MiKTeX и TeX Live, а свойства шрифтов установлены так, чтобы максимально близко воспроизводить поведение обычного LaTeX'а. Вместо указанных шрифтов можно использовать любые другие, установленные в операционной системе компьютера.

Основной текст

Псевдографика Воспользуемся символами псевдографики: \begin{document} \section{Возможности}

\subsection{Немного псевдографики}

Наличие таких возможностей хорошо иллюстрирует, что можно воспользоваться всеми возможностями шрифта \begin{quote}\underline{ \itshape Times New Roman:} \fontspec{Times New Roman}{ │ ┐ └ ┘ ├ ┤ ┬ ┴ ┼ ═ ║ ╒ ╓ ╔ ╕ ╖ ╗ ╘ ╙ ╚ ╛ ╜ ╝ ╞ ╟ ╠ ╡ ╢ ╣ ╤ ╥ ╦ ╧ ╨ ╩ ╪ ╫ ╬ ▀ ▄ █ ▌ ░ ▒ ▓ ■ □ ▪ ▫ ▬ ▲ ► ▼ ◄ ◊ ○ ◌ ● ◘ ◙ ◦ ☺ ☻ ☼ ♀ ♂ ♠ ♣ ♥ ♦ ♪ ♫ ♯ } \end{quote}

Панграммы Ниже с помощью панграммы «Аэрофотосъёмка ландшафта уже выявила земли богачей и процветающих крестьян» тестируются шрифты. При использовании некоторых PostScript шрифтов возникают проблемы с русскими символами.

\subsection{Многообразие шрифтов}

Распишем панграммы: \begin{quote}\underline{ \itshape Mechanica:} \fontspec{Mechanica}{Аэрофотосъёмка ландшафта уже выявила земли богачей и процветающих крестьян.} \end{quote} \begin{quote}\underline{ \itshape Comic Sans MS:} \fontspec{Comic Sans MS}{Аэрофотосъёмка ландшафта уже выявила земли богачей и процветающих крестьян.} \end{quote} \begin{quote}\underline{ \itshape PragmaticaC:} \fontspec{PragmaticaC}{Аэрофотосъёмка ландшафта уже выявила земли богачей и процветающих крестьян.} \end{quote} \begin{quote}\underline{ \itshape ZhikharevC:} \fontspec{ZhikharevC}{Аэрофотосъёмка ландшафта уже выявила земли богачей и процветающих крестьян.} \end{quote} \begin{quote}\underline{ \itshape Europe:} \fontspec{Europe}{Аэрофотосъёмка ландшафта уже выявила земли богачей и процветающих крестьян.} \end{quote} \begin{quote}\underline{ \itshape IzhitsaC:} \fontspec{IzhitsaC}{Аэрофотосъёмка ландшафта уже выявила земли богачей и процветающих крестьян.} \end{quote}

Unicode Напишем определение слова Википедия на разных языках. Обратите внимание, что транскрипция набрана непосредственно в Unicode. \subsection{Многообразие Языков} \subsubsection{Русский} Википе́дия (англ. Wikipedia, произносится /ˌwɪkɪˈpiːdɪə/) — свободная общедоступная многоязычная универсальная энциклопедия, поддерживаемая некоммерческой организацией «Фонд Викимедиа».

\subsubsection{Türkmençe} %% Туркменский Wikipedia birnäçe dilde 2001-nji ýylda ýazylmaga başlandy. Örän gysga wagtyň içinde ol tanymal webtaslamasy boldy. Iňlis dilinde 2.8 million, beýleki dillerde bolsa 12 milliondan gowrak makala neşir edildi.

\subsubsection{Ελληνικά} %% Греческий Η Βικιπαίδεια (ο όρος προήλθε από το Αγγλικό Wikipedia σε ελεύθερη μεταγραφή) είναι μία διεθνής, ελεύθερου περιεχομένου, εξελισσόμενη δια συνεργασίας εγκυκλοπαίδεια, η οποία βρίσκεται στη διεύθυνση http://www.wikipedia.org στο διαδίκτυο. \end{document}

Вывод Результат будет иметь вид:

Дополнительные возможности Отдельной интересной особенностью является возможность использовать русскоязычные команды и макро-определения (в преамбуле) (к использованию не рекомендуется):

\newcommand{\икс}{$x$} \newcommand{\игрек}{$y$} \newcommand{\зет}{$z$}

\newcommand{\цитата}

\begin{quote} \textcolor{gray}{#1} \end{quote}

Примечания

Литература

Ссылки Официальный сайт проекта Страница проекта в TeX Users Group Справочная документация Документация и примеры Список рассылки XeTeX Часто задаваемые вопросы

Документация по связанным пакетам fontspec babel babel-russian polyglossia xltxtra

Учебные пособия, статьи

Категория:TeX Категория:Программное обеспечение с лицензией MIT Категория:Кроссплатформенное программное обеспечение Категория:Свободное программное обеспечение, написанное на Си Категория:Свободное программное обеспечение, написанное на C++