Перейти до вмісту

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}
Зверстано в Scissor LaTeX: inputenc, fontenc і lmodern приймаються

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}
Зверстано в Scissor LaTeX: \setmainfont нічого не робить

Єдине перемикання шрифту, яке працює: увесь документ шрифтом без засічок.

Шрифт без засічок через \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.