Смелые бейсболки с люалатексом
Ссылаясь на этот протектор: Как использовать fontspec, а также иметь маленькие полужирные заглавные буквы с LuaLaTeX? , У меня есть шрифт с настоящими маленькими заглавными буквами, но такая же проблема. Пожалуйста, скомпилируйте этот простой код:
\documentclass{article}
\usepackage{fontspec}
\usepackage[italian]{babel}
\babelfont[italian]{rm}{EB Garamond}
% \setmainfont{EB Garamond}
\begin{document}
Quel \textbf{ramo del \textsc{lago} di Como}, che volge a \textbf{\textsc{mezzogiorno}}
\end{document}
Итак, решение не
Вам необходимо выбрать семейство шрифтов с полужирными капителями.
потому что у него ... Неужели так сложно иметь смелые маленькие заглавные буквы? Он работает, добавляя \setmainfont{EB Garamond}
, но я думаю, что делать фруктовый салат с кселатексом и луалатексом - не лучшая идея ... Спасибо
Ответы
\ setmainfont - это не команда, предназначенная только для xelatex. Это команда из fontspec для обоих движков.
В babel есть собственная команда для установки шрифтов (которая также может использоваться с обоими движками). В вашем случае необязательный аргумент [итальянский] отключает маленькие заглавные буквы по двум причинам:
Сначала с необязательным аргументом babel не загружает шрифт напрямую, а только подготавливает его для языка. А во-вторых, потому что babel не устанавливает, как fontspec, полужирный шрифт по умолчанию, b
которому он должен imho, поэтому я сообщу об этом. Поскольку серия bx, она запускает замену, и поэтому вы теряете маленькие заглавные буквы (чего, возможно, тоже не должно происходить ...). Я предлагаю удалить язык, это не имеет особого смысла, поскольку шрифт все равно его не знает, а пока добавить объявления серии (для этого требуется текущий латекс).
\documentclass{article}
\usepackage{fontspec}
\DeclareFontSeriesDefault[rm]{bf}{b}
\usepackage[italian]{babel}
\babelfont{rm}{EB Garamond}
\begin{document}
Quel \textbf{ramo del \textsc{lago} di Como}, che volge a \textbf{\textsc{mezzogiorno}}
\end{document}