Versalete em negrito com Lualatex
Referindo-se a este passo: Como usar fontspec e também ter maiúsculas pequenas em negrito com LuaLaTeX? , Eu tenho uma fonte com versaletes reais, mas o mesmo problema também. Por favor, compile este código simples:
\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}
Então, a solução não é
Você precisa escolher uma família de fontes que tenha versaletes em negrito
pois tem ... É tão difícil ter versalete em negrito? Funciona somando \setmainfont{EB Garamond}
, mas acho que não é uma boa ideia fazer uma salada de frutas de xelatex e lualatex ... Obrigado
Respostas
\ setmainfont não é um comando destinado apenas ao xelatex. É um comando do fontspec para ambos os motores.
O babel tem seu próprio comando para definir fontes (que também pode ser usado com ambos os motores). No seu caso, o argumento opcional [italiano] desativa versaletes por dois motivos:
A princípio, com o argumento opcional, babel não carrega a fonte diretamente, mas apenas a prepara para o idioma. E em segundo lugar, porque o babel não define como fontspec a série padrão em negrito ao b
qual deveria fazer, então irei reportar. Como a série é bx ela dispara uma substituição e você perde versaletes (o que talvez não devesse acontecer também ...). Eu sugiro remover o idioma, não faz muito sentido já que a fonte não o conhece de qualquer maneira, e adicionar uma declaração de série (isso requer um latex atual) por enquanto.
\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}