Odważne małe czapki z Lualatex

Aug 15 2020

Odnosząc się do tego bieżnika: Jak używać fontspec i mieć małe pogrubione czapki z LuaLaTeX? , Mam czcionkę z prawdziwymi kapitalikami, ale ten sam problem. Skompiluj ten prosty kod:

\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}

Więc rozwiązanie nie jest

Musisz wybrać rodzinę czcionek z pogrubionymi kapitalikami

bo ma ... Czy tak trudno jest mieć śmiałe kapitaliki? Działa z dodaniem \setmainfont{EB Garamond}, ale myślę, że robienie sałatki owocowej xelatex i lualatex nie jest dobrym pomysłem ... Dziękuję

Odpowiedzi

11 UlrikeFischer Aug 15 2020 at 15:31

\ setmainfont nie jest poleceniem przeznaczonym tylko dla xelatex. Jest to polecenie z fontspec dla obu silników.

babel ma swoje własne polecenie ustawiania czcionek (które również może być używane w obu silnikach). W Twoim przypadku opcjonalny argument [włoski] wyłącza kapitaliki z dwóch powodów:

Na początku z opcjonalnym argumentem babel nie ładuje bezpośrednio czcionki, a jedynie przygotowuje ją do języka. Po drugie, ponieważ babel nie ustawia jak fontspec domyślnej pogrubionej serii, do bktórej powinien, więc zgłoszę to. Ponieważ seria jest bx, wyzwala substytucję, a więc tracisz kapitaliki (co być może też nie powinno się zdarzyć ...). Proponuję usunąć język, nie ma to większego sensu, ponieważ czcionka i tak go nie zna, a na razie dodać deklaracje serii (wymaga to aktualnego lateksu).

\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}