fontenc, inputenc, fontspec и пакеты шрифтов
inputenc и fontenc не нужны и принимаются без эффекта, поскольку исходный код всегда читается как UTF-8. В обычных документах шрифты зафиксированы как Latin Modern и New Computer Modern Math: \setmainfont из fontspec и пакеты вроде times или libertine игнорируются, и работает только переключение на рубленый шрифт через \familydefault (при желании с helvet).
Что делают пакеты
inputencсообщает pdfLaTeX, в какой кодировке записан исходный файл.\usepackage[utf8]{inputenc}был нужен для набранных диакритических знаков до 2018 года; современный LaTeX читает UTF-8 по умолчанию.fontencвыбирает кодировку шрифта.\usepackage[T1]{fontenc}даёт pdfLaTeX шрифты со встроенными буквами с диакритикой, что улучшает переносы и копирование текста из PDF.fontspec(XeLaTeX и LuaLaTeX) загружает любой установленный шрифт OpenType:\setmainfont{...},\setsansfont{...},\setmonofont{...},\newfontfamily.- Пакеты шрифтов, такие как
lmodern,times,mathptmx,helvet,libertineилиnewtxtext, переключают документы pdfLaTeX на другую гарнитуру.
Что здесь работает
| Возможность | В Scissor LaTeX | Примечания |
|---|---|---|
| Исходник в UTF-8 с ä, é, ł, греческим, кириллицей, CJK ... | Работает | Всегда, с inputenc или без него. |
\usepackage[utf8]{inputenc}, \usepackage[T1]{fontenc}, lmodern | Пропускается | Принимаются; делать ничего не нужно. |
\renewcommand{\familydefault}{\sfdefault} | Работает | Основной текст шрифтом Latin Modern Sans. |
helvet или tgheros вместе со строкой выше | Работает | Рубленый шрифт TeX Gyre Heros, похожий на Helvetica. |
sfmath | Работает | Формулы рубленым шрифтом. |
\texttt{...}, \ttfamily | Работает | Latin Modern Mono. |
\textbf, \textit, \emph | Работает | |
\textsc{...} | Частично | В шрифте Latin Modern по умолчанию обычные буквы. С helvet и в макетах конференций (кроме LNCS, где используется Latin Modern) настоящие капители. |
\textsf{...}, \sffamily внутри текста | Пропускается | Текст остаётся с засечками. |
fontspec: \setmainfont, \setsansfont, \setmonofont | Пропускается | Принимаются в преамбуле, но ни на что не влияют. |
\newfontfamily\name{Font} | Не поддерживается | Пропускается с сообщением, а имя шрифта выводится. |
times, mathptmx, palatino, libertine, newtxtext, charter ... | Пропускается | Текст остаётся шрифтом Latin Modern. |
\fontsize{14}{16}\selectfont | Работает | Ближайший из обычных размеров от 5 до 144 pt; межстрочный интервал следует за размером. |
\fontfamily{...}\selectfont | Пропускается | Без сообщения; текст сохраняет свой шрифт. |
\small, \large, \Huge ... | Работает | Кроме макетов конференций и журналов, которые сохраняют собственные размеры. |
unicode-math: \setmathfont | Пропускается | Математический шрифт остаётся New Computer Modern Math. |
unicode-math: \symbf, \symit в формуле | Не поддерживается | Формула отображается красным. Используйте \mathbf, \boldsymbol или bm. |
Размер основного шрифта задаётся параметром класса (10pt, 11pt или 12pt); см. Макет страницы.
Примеры
Строки преамбулы, с которых начинаются многие документы, принимаются и ничего не меняют; набранные диакритические знаки работают в любом случае:
inputenc, fontenc и lmodern принимаются
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\begin{document}
Hans Mustermann bestellt Crème brûlée, Smørrebrød und Pierogi z
kapustą. \texttt{Monospaced}, \textbf{bold} and \textit{italic}
work as usual.
\end{document}fontspec загружается без ошибок, но текст остаётся шрифтом Latin Modern:
\setmainfont ни на что не влияет
\documentclass{article}
\usepackage{fontspec}
\setmainfont{TeX Gyre Pagella}
\begin{document}
This paragraph would be set in Pagella by XeLaTeX or LuaLaTeX.
Here it stays in Latin Modern, the default font.
\end{document}Единственное переключение шрифта, которое работает: весь документ рубленым шрифтом.
Рубленый шрифт с \familydefault и sfmath
\documentclass{article}
\usepackage{helvet}
\usepackage{sfmath}
\renewcommand{\familydefault}{\sfdefault}
\begin{document}
\section{Results}
John Doe measured $v = 44\,\mathrm{m/s}$, which matches the
estimate $v \approx \sqrt{2 g h}$.
\end{document}Совместимость
- Из установленного TeX сюда: текст и формулы сохраняются, шрифтом Latin Modern. Шрифты, заданные через
fontspecили пакеты шрифтов, не используются, а документы, написанные для XeLaTeX, верстаются без изменений. - Отсюда в установленный TeX: документы компилируются с pdfLaTeX, XeLaTeX или LuaLaTeX, как требуют их пакеты, и выбранные шрифты тогда начинают действовать.
Полные руководства есть на CTAN: fontspec, fontenc, inputenc и unicode-math. См. также Другие языки и шрифты.
Вопросы и ответы
Нужен ли \usepackage[utf8]{inputenc}?
Здесь нет: исходный код всегда читается как UTF-8. Строка не вредит, а старым установкам TeX она всё ещё нужна.
Как использовать Times New Roman или Arial?
В обычном документе никак. Шрифт текста Latin Modern; единственное переключение на рубленый шрифт делается через \renewcommand{\familydefault}{\sfdefault}, что вместе с \usepackage{helvet} даёт TeX Gyre Heros, похожий на Helvetica. Шаблоны конференций приносят собственные шрифты: TeX Gyre Termes (похожий на Times) для большинства из них и Libertinus для ACM.
Работает ли fontspec в Scissor LaTeX?
Он загружается без ошибок, поэтому документы XeLaTeX открываются и верстаются, но \setmainfont и другие настройки шрифтов игнорируются.
Каждый пример на этой странице верстается в Scissor LaTeX при сборке сайта. Обновлено 2026-11-07.