Polices Garamond et mathématiques

Nov 29 2020

Pour autant que je l'ai vu, il n'y a pas de réponse définitive quant aux meilleures pratiques d'utilisation d'une police mathématique avec Garamond. Actuellement, j'ai le résultat suivant:

Ma configuration est \usepackage{mathptmx}avec une suite \usepackage{CormorantGaramond}. Bien que je sois satisfait de l'apparence du texte principal, j'ai le sentiment qu'il y a quelque chose qui cloche dans la façon dont le texte mathématique est composé. Puis-je demander à ceux qui sont plus expérimentés dans les polices, si le texte ci-dessus semble idéal, du point de vue de l'utilisation des polices?

Peut-être pas pertinent: j'utilise CMake . J'éviterais, si possible, d'utiliser xelatex.

Réponses

5 Davislor Nov 29 2020 at 22:31

Vous avez plusieurs options ici.

Dans la chaîne d'outils moderne

Bien que vous ayez marqué votre question avec pdftex, mon conseil est d'utiliser LuaLaTeX et unicode-mathquand vous le pouvez, et les anciennes polices 8 bits lorsque vous le devez. Vous pouvez utiliser la police OpenType Garamond Math avec

\usepackage{unicode-math}
\setmainfont{EB Garamond}
\setmathfont{Garamond-Math.otf}[StylisticSet={8,9}]
% If you want a script-style \mathscr in addition to
% the calligraphic-style \mathcal, add:
\setmathfont{Garamond-Math.otf}[range={scr,bfscr}]

Vous pouvez consulter la documentation de Garamond Math pour plus d'informations sur les ensembles stylistiques disponibles. Par exemple, l'ensemble stylistique 9 corrige les tildes en mode mathématique.

Une façon plus simple de charger unicode-mathavec EB Garamond et Garamond Math est:

\usepackage[ebgaramond]{fontsetup}

Avec ebgaramond-maths

Selon la documentation, l'utilisation correcte est:

\usepackage[cmintegrals,cmbraces]{newtxmath}
\usepackage{ebgaramond-maths}

Avec newtx

Basé sur l'exemple de préambule de la section 18.4 du newtxmanuel:

\usepackage[lining,semibold,scaled=1.05]{ebgaramond}% Latex BOLD renders with ebgaramond semibold
\usepackage[T1]{fontenc} % best for Western European languages
\usepackage[varqu,varl]{inconsolata}% a typewriter font must be defined
\usepackage{amsmath,amsthm}% must be loaded before newtxmath
\usepackage[ebgaramond,vvarbb,subscriptcorrection]{newtxmath} % STIX Bbb
\usepackage{bm}% load after all math to give access to bold math

Il existe également une garamondxoption si vous avez installé ce package.

Sur les installations modernes, vous ne devriez plus avoir besoin de \usepackage{textcomp}ou \usepackage[utf8]{inputenc}, mais sur les plus anciennes, vous pourriez le faire. Si vous estimez nécessaire de définir une police de machine à écrire, vous voudrez probablement également en choisir une sans empattement.

Avec mathdesign

Vous pouvez télécharger les polices «expert» URW Garamond Type-1 avec le getnonfreefontsscript de TUG et écrire

\usepackage[garamond]{mathdesign}
\usepackage{garamondx} 

Cependant, URW Garamond dispose d'une licence restrictive. Le chargement de Cormorant Garamond ou EB Garamond à la place devrait également fonctionner. Si mathdesigncasse les petites majuscules, la solution la plus simple consiste à charger fontaxes.

Avec un autre package mathématique dans XeTeX

Dans XeTeX (et uniquement XeTeX), vous pouvez utiliser la police EB Garamond OpenType avec un package mathématique hérité en chargeant mathspecaprès l'autre package:

\usepackage{mathspec}

\setmainfont{EB Garamond}
\setmathsfont(Digits,Latin,Greek)[Uppercase=Italic, Lowercase=Italic]{EB Garamond}

Dans mes tests, cela ne donne pas toujours un espacement correct lorsque vous mélangez des lettres avec des symboles mathématiques.

Avec un autre package mathématique

Il existe au moins trois alphabets mathématiques hérités de Garamond différents. La conception mathématique est particulièrement pratique car elle comprend à la fois le latin et le grec en forme verticale et en italique. C'est donc la seule version héritée de Garamond qui est livrée avec des lettres grecques minuscules verticales, telles que \mathrm{\pi}.

Le nom de famille de cet alphabet de mathématiques est mdugm, et isomatha une interface pour le charger pour \mathrm, \mathit, \mathbfet \mathbfit. Vous pouvez essayer avec

\usepackage[OMLmathrm, rmdefault=mdugm]{isomath}

Ou en redéfinissant les alphabets mathématiques avec des commandes telles que:

\DeclareMathAlphabet{\mathit}{OML}{mdugm}{m}{it}
\SetMathAlphabet{\mathit}{bold}{OML}{mdugm}{mb}{it}