Je compose un texte en romain pour lequel j'ai choisi la magnifique suite de polices kpfonts, de Christophe Caignaert. Ce document comporte des tableaux. Pour ceux-ci, je souhaite utiliser des caractères sans empattements. Comme l'atteste le premier tableau de l'ECM ci-dessous, le sélecteur Ouvrir dans l'éditeur Overleaf
\documentclass[a4paper, 12pt, french, BCOR=0pt, DIV=15]{scrartcl} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage[fulloldstyle, light, largesmallcaps]{kpfonts} \usepackage{babel} \begin{document} \pagestyle{empty} \setlength{\parindent}{0cm} \begin{tabular}{ll} Premier & tableau\\ \sffamily kpfonts & \sffamily sans empattements \end{tabular}\\ \fontfamily{sffamily}\selectfont \begin{tabular}{ll} Deuxième & tableau\\ Computer Modern \emph{avec} empattements\dots & \sffamily ou kpfonts sans empattements ! \end{tabular} \end{document} Mais insérer des Je me dis que je vais changer de police avant le tableau, puis immédiatement après : ça devrait faire l'affaire.
Ainsi donc écris-je Surprise : mon deuxième tableau est passé en Computer Modern ! Mais avec empattements ! Et re-surprise : insérer le sélecteur Pourquoi diantre l'effet produit par PS : j'aurais mieux fait de lire la doc de kpfonts, qui m'indique que j'aurais dû écrire [EDIT] : cette question en a amené une autre, posée quelques jours plus tard. Posée 02 Fév '17, 08:27 Pathe ♦♦ |
Comme l'a montré touhami, la commande Ces paramètres ne tombent pas sous le sens. Dans le cas d'un document où un seul ensemble de polices est utilisé, pour passer de caractères avec empattements à des caractères qui en sont dépourvus, le plus simple est d'utiliser la commande Ouvrir dans l'éditeur Overleaf
\documentclass[a4paper, 12pt, french, BCOR=0pt, DIV=15]{scrartcl} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage[fulloldstyle, light, largesmallcaps]{kpfonts} \usepackage{lipsum} \usepackage{babel} \begin{document} \pagestyle{empty} \setlength{\parindent}{0cm} \lipsum[1] \sffamily \begin{tabular}{ll} Un & tableau\\ kpfonts & sans empattements \end{tabular} \normalfont \lipsum[2] \end{document} Publiée 02 Fév '17, 11:42 Pathe ♦♦ 1
Suivant le commentaire de @jerome dequeker il suffit d'ajouter
(03 Fév '17, 11:48)
touhami
|
L'ajout de commandes de formatage dans le corps du document (que ce soit directement dans chaque cellule ou avant et après le tableau) n'est pas recommandé (un oubli est si vite arrivé). Modifier le code de l'environnement Je conseille donc la création d'un nouvel environnement nommé Ouvrir dans l'éditeur Overleaf
\newenvironment{sftabular}{\sffamily\begin{tabular}}{\end{tabular}} Votre document d'exemple deviendrait donc : Ouvrir dans l'éditeur Overleaf
\documentclass[a4paper, 12pt, french, BCOR=0pt, DIV=15]{scrartcl} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage[fulloldstyle, light, largesmallcaps]{kpfonts} \usepackage{babel} \newenvironment{sftabular}{\sffamily\begin{tabular}}{\end{tabular}} \pagestyle{empty} \setlength{\parindent}{0cm} \begin{document} Avant (avec empattements) \begin{sftabular}{ll} Premier & tableau\\ kpfonts & sans empattements \end{sftabular} Après (avec empattements) \end{document} Publiée 04 Fév '17, 13:12 Paul Gaborit Pathe ♦♦ |
Vous pouvez remplacer
\fontfamily{sffamily}\selectfont
par\sffamily
. (et\normalfont
après le tableau)L'argument de la commande
\fontfamily
est (abréviation de nom) de la font par exemplecmr
lmss
ppl
jkpss
.Est-ce que tu souhaites utiliser la fonte sans empattements pour toutes les cellules du tableau ? Si oui, un moyen de n'appeler
\sffamily
qu'une seule fois par tableau est :\begingroup \sffamily \begin{tabular} ...\end{tabular} \endgroup
Voire même utiliser des macros ou le package
etoolbox
pour automatiser et simplifier tout ça.Dans ma question, je parle de la solution que j'ai trouvée pour avoir tous mes tableaux en kpfonts sans empattements.
Mais si je l'ai posée, c'est pour comprendre ce qui se passe !
Si je vous comprends bien, pour la commande
\fontfamily
, l'argumentsffamily
déclenche l'appel de la fonte Computer Modern sans empattements, à savoircmss
:\fontfamily{sffamily}\selectfont
=\fontfamily{cmss}\selectfont
. J'ai bon ?Non l'argument
sffamily
n'est pas reconnu pour\fontfamily
donc la famille par défaut est utilisée à savoircmr
.Tout s'éclaire !