Почему люди переходят на XeLaTeX

Системные шрифты, сложные скрипты, шаблоны шрифтов.

Почему люди переходят на XeLaTeX

LaTeX — это язык, но его компилируют несколько движков, и они различаются по своим возможностям. Традиционный движок — pdfLaTeX, два современных — XeLaTeX и LuaLaTeX. Основная причина, по которой люди переходят на XeLaTeX, — это шрифты: pdfLaTeX использует только шрифты, упакованные специально для TeX, тогда как XeLaTeX загружает любой шрифт OpenType или TrueType, установленный в вашей системе, к которому обращается его обычное имя.

Три причины переключиться

Первый — прямой доступ к системным шрифтам. В пакете fontspec выбор шрифта представляет собой одну читаемую строку, и для нужной вам гарнитуры не требуется никакого пакета шрифтов, специфичного для TeX. Независимо от того, является ли целью \setmaininfot{Inter} для современного оформления или Times New Roman для требования к журналу, механизм один и тот же:

\usepackage{fontspec}
\setmainfont{Times New Roman}

fontspec требует XeLaTeX или LuaLaTeX; под pdfLaTeX это просто ошибки. Шрифты также могут перемещаться внутри папки проекта, а не внутри системы, как показано в файле шрифта рядом с проектом.

Второй — родной Unicode и сложные скрипты. XeLaTeX напрямую считывает входные данные UTF-8 и обрабатывает системы письма, которые не может использовать pdfLaTeX, включая арабский, деванагари, китайский, японский и корейский, с правильным формированием и, с помощью пакета «polyglossia», корректирует расстановку переносов и направление для каждого языка. Если в вашем документе смешаны алфавиты или даже просто цитируются имена с необычными диакритическими знаками, это само по себе решает движок.

Третий — шаблоны, которые решают за вас. Многие современные шаблоны резюме, тезисов и презентаций загружают «fontspec» или «polyglossia» в своих первых строках, и такой шаблон компилируется только в XeLaTeX или LuaLaTeX. Если загруженный шаблон сразу же дает сбой с ошибкой, в которой упоминается fontspec, исправлением является переключение движка, а не редактирование шаблона.

От чего ты отказываешься

Компромиссы скромные, но реальные. Некоторые пакеты, специфичные для pdfLaTeX, не применяются, в первую очередь расширение шрифта microtype, которое XeLaTeX поддерживает лишь частично. Компиляция также выполняется несколько медленнее. Некоторые старые конвейеры журналов по-прежнему используют pdfLaTeX, поэтому перед отправкой рукописи, созданной с помощью XeLaTeX, ознакомьтесь с инструкциями места проведения. LuaLaTeX использует возможности шрифтов и Unicode и добавляет сценарии Lua. Выберите между ними любое название шаблона или места проведения. Документы, созданные на основе fontspec, обычно компилируются на обоих.

Выбор на практике

Разумное правило — использовать pdfLaTeX, когда на него нацелен шаблон заведения, и XeLaTeX для всего, где вы выбираете шрифты: тезисы, резюме, слайды и многоязычные документы. Входящий в комплект движок Oleafly основан на XeTeX (Tectonic), поэтому документы fontspec компилируются там без какой-либо настройки движка. Распространенной ошибкой является смешивание эпох, например, загрузка «fontspec» вместе с пакетами шрифтов, предназначенными только для pdfLaTeX, такими как «newtxtext». Выберите одну систему шрифтов для каждого документа, и вопрос о движке практически ответит сам собой.

Вернуться к Время выполнения