ConTeXt/ Polices et familles de polices
Polices et familles de polices
[modifier | modifier le wikicode]Cette page présente la manière dont ConTeXt gère les polices, les variantes typographiques (italique, gras, petites capitales), les familles complètes et les fonctionnalités OpenType. Elle expose également les enjeux typographiques et les bonnes pratiques pour obtenir un rendu élégant, cohérent et professionnel.
Objectifs de cette section :
- Comprendre ce qu’est une police et une famille de polices.
- Distinguer les variantes (italique, gras, petites capitales).
- Savoir choisir des polices adaptées à la langue française et à l’édition savante.
- Utiliser correctement les commandes :
\setupbodyfont,\definefontfamily,\definefontfeature. - Activer les fonctions OpenType (ligatures, chiffres anciens, petites capitales, etc.).
1. Pourquoi les polices sont un enjeu typographique majeur
[modifier | modifier le wikicode]La question des polices peut sembler purement décorative, mais elle touche au cœur du travail typographique. Dans un document sérieux — essai, ouvrage savant, édition critique ou travail littéraire — la police n’est pas un simple habillage. C’est l’outil principal de lisibilité : proportions, contrastes, cohérence des formes, finesse des signes diacritiques.
Une police n’est pas seulement un dessin de lettres : c’est un ensemble cohérent pensé pour plusieurs pages. Une famille de polices rassemble les variantes nécessaires à une mise en page complète : romain, italique, gras, italique gras, petites capitales, chiffres proportionnels ou tabulaires, ligatures, jeux stylistiques.
Dans la tradition typographique francophone, cette cohérence est essentielle : on attend d’une police des italiques véritables, un gras expressif, des petites capitales authentiques et des chiffres adaptés au contexte. Ces variantes ne sont pas automatiques : beaucoup de polices courantes n’ont pas de vraies petites capitales ou ne disposent pas d’un gras distinct.
ConTeXt, grâce à LuaTeX, exploite pleinement OpenType : choix des variantes, sélections des jeux de chiffres, activation des ligatures, combinaisons multi-script. Le choix d’une famille typographique est donc une décision à la fois esthétique et technique.
2. Polices natives et polices recommandées
[modifier | modifier le wikicode]ConTeXt inclut nativement les familles libres suivantes :
| Famille | Style | Remarques |
|---|---|---|
| TeX Gyre Pagella | sérif | Très adaptée aux textes longs (inspirée de Palatino). |
| TeX Gyre Bonum | sérif | Bonne lisibilité, proche du Bookman. |
| TeX Gyre Termes | sérif | Inspirée de Times, excellente compatibilité. |
| TeX Gyre Heros | sans-sérif | Alternative libre à Helvetica. |
| TeX Gyre Adventor | sans-sérif | Inspirée d’URW Gothic. |
Polices recommandées pour la typographie française moderne :
- Libertinus (famille très complète, avec italique, smallcaps, maths)
- EB Garamond (excellentes petites capitales, italique élégante)
- TeX Gyre Pagella (robuste, lisible, idéale pour les essais et livres)
Pour utiliser une de ces familles :
\setupbodyfont[libertinus, 11pt]
3. Comprendre les variantes : romain, italique, gras, petites capitales
[modifier | modifier le wikicode]ConTeXt distingue strictement :
\tf— romain (upright)\it— italique\bf— gras\bi— gras italique\sc— petites capitales
Exemple :
Ceci est {\it italique}, ceci est {\bf gras},
et ceci en {\sc petites capitales}.
⚠️ Attention : si la police choisie ne possède pas de vraie italique ou de vraies petites capitales, ConTeXt les génèrera artificiellement. Cela dégrade le rendu. Privilégiez toujours des familles complètes (Libertinus, EB Garamond, TeX Gyre).
4. Définir une famille de polices personnalisée
[modifier | modifier le wikicode]Pour charger explicitement une famille :
\definefontfamily[mainface][serif][EB Garamond]
\definefontfamily[mainface][sans][TeX Gyre Heros]
\definefontfamily[mainface][mono][DejaVu Sans Mono]
\setupbodyfont[mainface, 11pt]
ConTeXt associe alors automatiquement les variantes italique, gras, petites capitales, etc.
5. Activer les fonctions OpenType
[modifier | modifier le wikicode]Les polices modernes incluent de nombreuses fonctionnalités avancées : ligatures, chiffres anciens, petites capitales, variantes stylistiques, formes contextuelles.
Pour activer un jeu de fonctionnalités :
\definefontfeature[garafeatures][default][
liga=yes,
dlig=yes,
onum=yes, % chiffres oldstyle
pnum=yes, % chiffres proportionnels
kern=yes,
]
\setupbodyfont[mainface]
L’italique d’EB Garamond, par exemple, utilise des formes contextuelles (swash italics) qui peuvent être activées via :
\definefontfeature[swash][default][swsh=yes]
6. Tester une police et ses glyphes
[modifier | modifier le wikicode]ConTeXt permet d’inspecter une police :
\showfontcharacters[EBGaramond12-Regular]
Pour obtenir la liste des fontes visibles par ConTeXt :
mtxrun --script fonts --list --all
- Si vous avez installé une nouvelle police, il faut passer plusieurs commande afin que le système la prenne en charge; d'abord on régénère la base de données des polices de ConTeXt :
context --generate
Puis, on efface le cache (des polices) :
mtxrun --script cache --erase
Et enfin on reconstruit la base de données :
mtxrun --script fonts --reload
💡 Astuce : Si une police ne possède pas de vraies petites capitales ou de vraies italiques, ConTeXt peut afficher un avertissement dans le fichier log.
7. Préparer une famille pour plusieurs écritures (latin, grec, cyrillique)
[modifier | modifier le wikicode]Si une police n’inclut pas de grec, vous pouvez définir une police de secours :
\definefontfamily[mainface][serif][Libertinus Serif]
\definefontfamily[mainface][math][Libertinus Math]
\definefallbackfamily[mainface][serif][GFS Didot][range=greek]
\setupbodyfont[mainface, 11pt]
Cette question est développée dans :
8. Erreurs fréquentes et solutions
[modifier | modifier le wikicode]| Problème | Cause | Solution |
|---|---|---|
| Italique « faux » | police sans italique | choisir une famille complète |
| petites capitales trop grandes | smallcaps synthétiques | EB Garamond / Libertinus |
| chiffres incohérents | jeux OpenType non activés | onum=yes, pnum=yes
|
| mélange de serif/sans-serif involontaire | famille mal définie | \definefontfamily
|
Voir aussi
[modifier | modifier le wikicode]- ConTeXt/Styles_typographiques_:_Italiques,_gras,_petites_capitales
- ConTeXt/Tester_les_polices
- ConTeXt/Polices_non_romanes
- ConTeXt/Organisation_du_document
- ConTeXt
9. Sources et bibliographie
[modifier | modifier le wikicode]Institutions :
- Pragma ADE — Documentation ConTeXt (pragma-ade.com) sur la page Wiki de ConTeXt (ConTeXt Garden) : ConTeXt Garden
- LuaTeX Reference Manual (luatex.org)
- OpenType specification (Microsoft/Adobe)
Travaux conseillés :
- Hans Hagen, Fonts in ConTeXt
- Idris Samawi Hamid, OpenType and Arabic script in LuaTeX
- Will Robertson, New perspectives on TeX font management
- Taco Hoekwater, LuaTeX font internals
10. Pages associées
[modifier | modifier le wikicode]- ConTeXt/Tester_les_polices
- ConTeXt/_Choisir_des_polices_pour_les_langues_non-romanes_(grec_ancien,_arabe,_cyrillique,_CJK)
- ConTeXt/Du_document_simple_aux_documents_complexes