
Muito parecido comessepergunta Eu gostaria de ter uma fonte matemática sem serifa diferente em (pequenas) partes do meu documento. Como sugerido poresseresposta a essa pergunta, isso pode ser conseguido usando \DeclareMathAlphabet
as fontes Computer Modern da seguinte maneira.
\documentclass{article}
\DeclareMathVersion{sans}
\SetSymbolFont{operators}{sans}{OT1}{cmbr}{m}{n}
\SetSymbolFont{letters}{sans}{OML}{cmbrm}{m}{it}
\SetSymbolFont{symbols}{sans}{OMS}{cmbrs}{m}{n}
\SetMathAlphabet{\mathit}{sans}{OT1}{cmbr}{m}{sl}
\SetMathAlphabet{\mathbf}{sans}{OT1}{cmbr}{bx}{n}
\SetMathAlphabet{\mathtt}{sans}{OT1}{cmtl}{m}{n}
\SetSymbolFont{largesymbols}{sans}{OMX}{iwona}{m}{n}
\begin{document}
1234 CQ $1234 CQ$
\sffamily\mathversion{sans}
1234 CQ $1234 CQ$
\end{document}
No entanto, em meu documento, gostaria de usar Roboto como fonte sem serifa. Fazer isso resulta em diferenças perceptíveis entre o documento e a fonte matemática.
\documentclass{article}
\usepackage[light,medium]{roboto}
\DeclareMathVersion{sans}
\SetSymbolFont{operators}{sans}{OT1}{cmbr}{m}{n}
\SetSymbolFont{letters}{sans}{OML}{cmbrm}{m}{it}
\SetSymbolFont{symbols}{sans}{OMS}{cmbrs}{m}{n}
\SetMathAlphabet{\mathit}{sans}{OT1}{cmbr}{m}{sl}
\SetMathAlphabet{\mathbf}{sans}{OT1}{cmbr}{bx}{n}
\SetMathAlphabet{\mathtt}{sans}{OT1}{cmtl}{m}{n}
\SetSymbolFont{largesymbols}{sans}{OMX}{iwona}{m}{n}
\begin{document}
1234 CQ $1234 CQ$
\sffamily\mathversion{sans}
1234 CQ $1234 CQ$
\end{document}
Observe, por exemplo, as diferentes formas do dígito 1 ou da letra Q. Obviamente, eu gostaria de ter a matemática e a fonte sem serifa do documento o mais semelhante possível. Isso certamente não funcionará (facilmente) para símbolos especiais, mas obter números, letras e, de preferência, letras gregas da fonte Roboto já seria ótimo.
Mudando o primeiro \SetSymbolFont
, já posso chegar um passo mais perto.
\documentclass{article}
\usepackage[light,medium]{roboto}
\DeclareMathVersion{sans}
\SetSymbolFont{operators}{sans}{OT1}{Roboto-LF}{l}{n}
\SetSymbolFont{letters}{sans}{OML}{cmbrm}{m}{it}
\SetSymbolFont{symbols}{sans}{OMS}{cmbrs}{m}{n}
\SetMathAlphabet{\mathit}{sans}{OT1}{cmbr}{m}{sl}
\SetMathAlphabet{\mathbf}{sans}{OT1}{cmbr}{bx}{n}
\SetMathAlphabet{\mathtt}{sans}{OT1}{cmtl}{m}{n}
\SetSymbolFont{largesymbols}{sans}{OMX}{iwona}{m}{n}
\begin{document}
1234 CQ $1234 CQ$
\sffamily\mathversion{sans}
1234 CQ $1234 CQ$
\end{document}
Agora onúmerossão da fonte correta! Tentar a mesma abordagem para o segundo \SetSymbolFont
falha, entretanto.
\SetSymbolFont{letters}{sans}{OML}{Roboto-LF}{l}{it}
resulta em
LaTeX Font Warning: Font shape `OML/Roboto-LF/l/it' undefined
(Font) using `OML/cmm/m/it' instead on input line 19.
e a fonte ausente é evidente na saída.
Existe alguma maneira de obter letras (e letras gregas) na fonte correta?
Caso existam abordagens com pdflatex
e xelatex
/ lualatex
, eu estaria interessado principalmente em pdflatex
, já que também estou usando o microtype
pacote, que é conhecido por não ser totalmente compatível com xelatex
/ lualatex
. Se este último puder fazer a coisa, mas pdflatex
não puder, ainda posso pensar em abandonar microtype
.