XeTeX — Википедия

XeTeX
Логотип программы XeTeX
Скриншот программы XeTeX
Использование различных лигатур в XeTeX
Тип Настольное издательское ПО
Автор Jonathan Kew
Разработчик Khaled Hosny
Написана на Си, C++, Pascal
Операционная система Кроссплатформенное
Первый выпуск 2004
Последняя версия 0.99999 (4 февраля 2018 года)
Репозиторий sourceforge.net/p/xetex/…
git.code.sf.net/p/xetex/…
Лицензия MIT License
Сайт xetex.sourceforge.net
Логотип Викисклада Медиафайлы на Викискладе

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

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

Особенности[править | править код]

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

Это позволяет использовать:

Также возможна вёрстка математики с использованием 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], который имеет те же функции, но, начиная с версии 3.9, может использоваться с любым из существующих компиляторов, включая TeX, PdfTeX, XeTeX и LuaTeX[4]. Приведенный выше пример должен быть изменен, если используется пакет babel[3]:
\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[5] подготавливает загрузку шрифтов 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{итата}[1]     {          \begin{quote}              \textcolor{gray}{#1}          \end{quote}      } 

Примечания[править | править код]

  1. Jonathan Kew - Interview (англ.). Сообщество пользователей TeX (3 апреля 2007). — Интервью с автором и главным разработчиком XeTeX. Дата обращения: 19 февраля 2010. Архивировано 15 июня 2010 года.
  2. Jonathan Kew. An introduction to XeTeX (англ.). Официальный сайт проекта (15 июня 2005). — Слайды для презентации. Дата обращения: 19 февраля 2010. Архивировано 1 декабря 2010 года.
  3. 1 2 babel – Multilingual support for LATEX, LuaLaTeX, XeLaTeX, and Plain TEX (англ.). Сообщество пользователей TeX. — Пакет поддержки русского и других языков. Дата обращения: 11 апреля 2013. Архивировано 29 марта 2013 года.
  4. LuaTeX (англ.). Wikipedia. — A TeX-based computer typesetting system. Дата обращения: 11 апреля 2013. Архивировано 24 апреля 2013 года.
  5. fontspec – Advanced font selection in X∃LATEX and LuaLATEX (англ.). Сообщество пользователей TeX. — fontspec – пакет для выбора шрифтов в системе X∃LATEX и LuaLATEX. Дата обращения: 11 апреля 2013. Архивировано 2 мая 2009 года.

Литература[править | править код]

  • Michel Goossens. The XeTeX Companion. TeX meets OpenType and Unicode. — 2010.

Ссылки[править | править код]

Документация по связанным пакетам[править | править код]

Учебные пособия, статьи[править | править код]