Mantenha o computador moderno em negrito

Mantenha o computador moderno em negrito

Quero usar o Gentium como fonte principal e isso é feito pelo comando \usepackage{Gentium}. Mas quero que "Computer Modern" seja minha fonte Bold. Alguma ideia de como fazer isso?

Responder1

Não há Gentiumpacote, mas gentium; usar letras maiúsculas no nome do pacote pode funcionar em sistemas de arquivos que não diferenciam maiúsculas de minúsculas (Windows), mas limita a portabilidade dos arquivos, pois \usepackage{Gentium}não funciona em sistemas GNU/Linux ou Mac OS X.

Uma solução simplista é corrigir \bfseriese \mdseriesverificar a família de fontes atual e, se for o padrão ( gentium), mudar para CM, para \bfseries; pelo contrário, se a família de fontes for CM, mude para gentium.

Outras famílias de fontes não são afetadas conforme mostrado no exemplo.

No entanto, o exemplo também mostra que o Computer Moder Roman Bold é visualmente incompatível com o Gentium, por isso recomendo fortemente que você não faça isso. Adventor e Cursor são usados ​​aqui apenas a título de exemplo e não afirmo que devam ser usados ​​junto com o Gentium.

Como regra tipográfica geral, um documento normal deve usar apenas uma família de fontes com serifa.

\documentclass{article}
\usepackage{gentium}
\usepackage{tgadventor}
\usepackage{tgcursor}
\usepackage{xpatch,pdftexcmds}

\xpatchcmd{\bfseries}
  {\selectfont}
  {\checkfamily{\familydefault}{cmr}\selectfont}
  {}{}
\xpatchcmd{\mdseries}
  {\selectfont}
  {\checkfamily{cmr}{\familydefault}\selectfont}
  {}{}

\makeatletter
\newcommand{\checkfamily}[2]{%
  \ifnum\pdf@strcmp{\f@family}{#1}=\z@
    \fontfamily{#2}%
  \fi
}
\makeatother

\begin{document}
Some text in Gentium and \textbf{some in CM {\mdseries (this is Gentium)} and back to CM}

\sffamily
Some text in Adventor and \textbf{some in bf {\mdseries (this is md)} and back to bf}

\ttfamily
Some text in Cursor and \textbf{some in bf {\mdseries (this is md)} and back to bf}

\end{document}

insira a descrição da imagem aqui

Uma visualização ampliada mostrando melhor o conflito de fontes

insira a descrição da imagem aqui

Uma solução mais longa e possivelmente mais robusta envolve a modificação dos .fdarquivos do Gentium.

Se você usar XeLaTeX ou LuaLaTeX, poderá obter isso mais facilmente:

\usepackage{fontspec}

\setmainfont{Gentium}[
  BoldFont={Latin Modern Roman 10 Bold}
]
\setsansfont{TeX Gyre Adventor}
\setmonofont{TeX Gyre Cursor}

Será necessário mais algum malabarismo com os tamanhos.

informação relacionada