Шрифт Times New Roman на моем Mac не имеет форм малых капителей. Поэтому я хочу установить TeX Gyre Termes в качестве резервного шрифта малых капителей.
Использование TeX Gyre Termes в качестве основного шрифта
\documentclass{article}
\usepackage{fontspec}
\setmainfont{texgyretermes}%
[
Extension = .otf,
UprightFont = *-regular,
BoldFont = *-bold,
ItalicFont = *-italic,
BoldItalicFont = *-bolditalic
]
\begin{document}
hello
\textsc{hello}
\textbf{\textsc{hello}}
\textit{\textsc{hello}}
\end{document}
Результат удовлетворительный, как можно увидеть ниже:
Использование Times New Roman в качестве основного шрифта
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Times New Roman}
\begin{document}
hello
\textsc{hello}
\textbf{\textsc{hello}}
\textit{\textsc{hello}}
\end{document}
Как видно из журнала, шрифтовые формы и m/sc
отсутствуют .b/sc
m/scit
Использование TeX Gyre Termes в качестве резервного варианта
Согласно руководству по шрифтам, мы можем установить резервную копию малых заглавных букв следующим образом:
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Times New Roman}%
[
SmallCapsFont = TeX Gyre Termes,
SmallCapsFeatures = {Letters=SmallCaps}
]
\begin{document}
hello
\textsc{hello}
\textbf{\textsc{hello}}
\textit{\textsc{hello}}
\end{document}
Приведенный выше пример может быть скомпилирован только lualatex
(поскольку пользователи macOS не могут использовать шрифты в дереве texmf по имени шрифта при использовании xelatex
). Однако lualatex
ни один из них не может дать удовлетворительного результата:
После установки шрифта TeX Gyre Termes в мою систему его xelatex
тоже можно использовать, но результат будет таким же, как на скриншоте выше.
Вопрос
Без необходимости установки TeX Gyre Termes в системукак правильно настроить резервный шрифт с малыми заглавными буквами в обеих ОС xelatex
и lualatex
для пользователей macOS?
решение1
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Times New Roman}%
[
BoldFeatures =
{SmallCapsFont={TeX Gyre Termes Bold},
SmallCapsFeatures = {Letters=SmallCaps}} ,
ItalicFeatures =
{SmallCapsFont={TeX Gyre Termes Italic},
SmallCapsFeatures = {Letters=SmallCaps}} ,
]
\begin{document}
hello
\textsc{hello}
\textbf{\textsc{hello}}
\textit{\textsc{hello}}
\textbf{\textit{\textsc{hello}}}
\end{document}
В системе, где шрифты в дереве texmf не могут быть найдены по имени файла, это может сработать (не проверено)
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Times New Roman}%
[
BoldFeatures =
{SmallCapsFont={texgyretermes-bold},
SmallCapsFeatures = {Extension=.otf,Letters=SmallCaps}} ,
ItalicFeatures =
{SmallCapsFont={texgyretermes-italic},
SmallCapsFeatures = {Extension=.otf,Letters=SmallCaps}} ,
]
\begin{document}
hello
\textsc{hello}
\textbf{\textsc{hello}}
\textit{\textsc{hello}}
\textbf{\textit{\textsc{hello}}}
\end{document}