Sommaire
Extrait de wikipedia : https://fr.wikipedia.org/wiki/Police_d'écriture
Une fonte est l’ensemble des caractères correspondant aux mêmes caractéristiques de corps, graisse et italique au sein d’une même police. Par exemple :
Garamond est une police de caractères ;
le Garamond romain gras 12 points est une fonte.
Le World Wide Web Consortium, organisme de normalisation des technologies du Web, a défini pour sa norme de présentation CSS cinq familles de polices génériques :
serif : des familles de police à empattement ;
sans-serif : des familles de polices sans empattement ;
cursive : des familles de polices simulant l’écriture à la main ;
fantasy : des familles de polices dont les glyphes sont exotiques et plus décoratives qu’utilisables pour du long texte. Peuvent convenir pour des titres ;
monospace : des familles de polices à chasse fixe, comme sur des machines à écrire ou des terminaux d’ordinateur
Extrait de wikipedia : https://en.wikipedia.org/wiki/Computer_font
A bitmap font is one that stores each glyph as an array of pixels (that is, a bitmap). It is less commonly known as a raster font. Bitmap fonts are simply collections of raster images of glyphs. For each variant of the font, there is a complete set of glyph images, with each set containing an image for each character. For example, if a font has three sizes, and any combination of bold and italic, then there must be 12 complete sets of images.
Outline fonts or vector fonts are collections of vector images, consisting of lines and curves defining the boundary of glyphs. Early vector fonts were used by vector monitors and vector plotters using their own internal fonts, usually with thin single strokes instead of thick outlined glyphs.
Extrait de wikipedia : https://en.wikipedia.org/wiki/OpenType
OpenType is a format for scalable computer fonts. It was built on its predecessor TrueType, retaining TrueType's basic structure and adding many intricate data structures for prescribing typographic behavior. OpenType is a registered trademark of Microsoft Corporation.
Extrait de wikipedia : https://en.wikipedia.org/wiki/TrueType
TrueType is an outline font standard developed by Apple and Microsoft in the late 1980s as a competitor to Adobe's Type 1 fonts used in PostScript. It has become the most common format for fonts on the classic Mac OS, macOS, and Microsoft Windows operating systems.
Les paquets contenant des fontes sont dans la section "fonts". Pour obtenir une liste des paquets de fontes "contour" à l'exclusion des fontes bitmap :
$ aptitude search ~sfonts |grep -v xfonts
Les paquets installent les fichiers des fontes dans le répertoire /usr/share/fonts/opentype/nom_police ou /usr/share/fonts/truetype/nom_police. Les fontes installées dans /usr/share sont utilisables par tous les utilisateurs.
Lorsque l'on dispose du fichier, l'installation peut s'effectuer par copie dans les répertoires /usr/share/fonts/truetype/nom_police ou /usr/share/fonts/opentype/nom_police ou dans les répertoire personnels ~/.fonts/opentype/nom_police/ ou ~/.fonts/truetype/nom_police.
Notes :
Le nom_police est libre et facultatif, de même que l'organisation en sous-répertoire dans /usr/share/fonts/ et ~/.fonts/
Les fichiers doivent avoir les droits 644
Les fontes truetype ont l'extension : ttf, les fontes opentype ont l'extension otf.
L'installation des polices libres freefont, liberation, droid, dejavu permet de recouvrir un grand nombre de cas d'alphabets et de fontes courantes ou compatibles avec les polices standards sur d'autres systèmes d'exploitation :
Extrait de aptitude show ....
fonts-freefont-tff : Freefont est un ensemble de polices TrueType libres de bonne qualité, qui couvre les caractères UCS. Ces polices sont similaires aux polices très connues Helvetica, Times et Courier.
fonts-liberation : Ce paquet fournit un jeu de polices de caractères issu de Red Hat, incluant les variantes serif, sans-serif et à chasse fixe, disposant exactement des mêmes caractéristiques que les fontes (non libres) de Microsoft, Times, Arial et Courier, et pouvant donc servir de fontes de substitution à ces dernières. Cette famille de police de caractères se nomme Liberation.
fonts-droid : The Droid family of fonts consists of Droid Sans (Regular and Bold), Droid Sans Mono (Regular) and Droid Serif (Regular, Bold, Italic and BoldItalic). Each contains extensive character set coverage including Western Europe,
Eastern/Central Europe, Baltic, Cyrillic, Greek and Turkish support. The Droid Sans regular font also includes support for Arabic, Simplified and Traditional Chinese, Hebrew, Japanese, Korean and Thai. Droid was designed by Ascender's Steve Matteson and hinted to provide optimal
quality for screen text.
fonts-dejavu : DejaVu fournit une version améliorée de la famille de police Vera, qui se veut de qualité avec une couverture étendue de l'Unicode, tout en gardant le style originel de Vera. DejaVu est conforme à la norme européenne multilingue (MES-1 et MES-2) pour la couverture Unicode. Les polices DejaVu fournissent des variantes serif, sans et monospace. Les polices DejaVu sont destinées aux matériels de faibles résolutions
# apt install fonts-freefont-tff fonts-liberation fonts-droid fonts-dejavu
Les polices lobster two et purisa peuvent être utilisées comme fontes cursive et fantasy. Pour les installer :
# apt install fonts-lobstertwo fonts-tlwg-purisa
Les propriétés de la fonte (famille et nom, styles et langues prise en compte, sont affichables avec la commande fc-query
$ fc-query /usr/share/fonts/opentype/lobster/lobster.otf
Pattern has 22 elts (size 32)
family: "Lobster Two"(s)
familylang: "en"(s)
style: "Bold Italic"(s)
stylelang: "en"(s)
fullname: "LobsterTwo-BoldItalic"(s)
fullnamelang: "en"(s)
slant: 100(i)(s)
weight: 200(i)(s)
width: 100(i)(s)
foundry: "unknown"(s)
file: "/usr/share/fonts/opentype/lobster/lobster.otf"(s)
index: 0(i)(s)
outline: True(s)
scalable: True(s)
charset:
0000: 00000000 ffffffff ffffffff 7fffffff 00000000 ffff7ffe ffffffff ffffffff
0001: c30233f0 000e0000 0c0f001e 7f030003 00040000 00000000 00000000 00000000
0002: 00000000 00000000 00000000 00000000 00000000 00000000 3d0000c0 00000000
0020: 77180000 06010047 00000000 00000000 00000000 00001000 00000000 00000000
0021: 00000000 00000004 00000000 00000000 00000000 00000000 00000000 00000000
0022: 00040000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00fb: 0000001f 00000000 00000000 00000000 00000000 00000000 00000000 00000000
(s)
lang: aa|ay|bi|br|ch|co|da|de|en|es|et|eu|fi|fj|fo|fr|fur|fy|gd|gl|gv|ho|hu|ia|id|ie|io|is|it|lb|mg|nb|nds|nl|nn|no|nr|nso|oc|om|pl|pt|rm|sma|smj|so|sq|ss|st|sv|sw|tl|tn|ts|uz|vo|vot|wa|xh|yap|zu|an|csb|fil|ht|jv|kj|kwm|li|ms|ng|pap-an|pap-aw|rn|rw|sc|sg|sn|su|za(s)
fontversion: 131072(i)(s)
capability: "otlayout:latn"(s)
fontformat: "CFF"(s)
decorative: False(s)
hash: "sha256:4605f4c5aac8d4bb55a28a63db6c1dd06394d4b6e0cb157f61603fb26021a617"(s)
postscriptname: "LobsterTwo-BoldItalic"(s)
Sous réserve que les polices soient installées et utilisées par le navigateur, les paragraphes qui suivent utilisent les polices Liberation sans, liberation sérif et liberation mono, lobster et purisa :
Libération sans :
Nunc vero inanes flatus quorundam vile esse quicquid extra urbis pomerium nascitur aestimant praeter orbos et caelibes, nec credi potest qua obsequiorum diversitate coluntur homines sine liberis Romae.
Nunc vero inanes flatus quorundam vile esse quicquid extra urbis pomerium nascitur aestimant praeter orbos et caelibes, nec credi potest qua obsequiorum diversitate coluntur homines sine liberis Romae.
Police liberation mono : Nunc vero inanes flatus quorundam vile esse quicquid extra urbis pomerium nascitur aestimant praeter orbos et caelibes, nec credi potest qua obsequiorum diversitate coluntur homines sine liberis Romae.
Police lobster : Nunc vero inanes flatus quorundam vile esse quicquid extra urbis pomerium nascitur aestimant praeter orbos et caelibes, nec credi potest qua obsequiorum diversitate coluntur homines sine liberis Romae.
Police purisa : Nunc vero inanes flatus quorundam vile esse quicquid extra urbis pomerium nascitur aestimant praeter orbos et caelibes, nec credi potest qua obsequiorum diversitate coluntur homines sine liberis Romae.
La commande xfd -fa "nom_police" ouvre une fenêtre d'affichage dans X de la police. Par exemple :
$ xfd -fa "Purisa"
Pour un affichage plus convivial et plus complet, il est préférable d'utiliser font-manager du paquet homonyme.
La gestion des polices est assurée par fontconfig. Ce paquet fournit les commandes fc-cache, fc-list, fc-match utilisées ci-dessous. A noter que la gestion des fontes étant assurée au niveau de chaque utilisateur, les commandes doivent être lancées au niveau de l'utilisateur concerné.
Cette commande est à effectuer après l'installation manuelle d'une fonte. Elle scrute les différents emplacements possibles et mets à jour le cache pour l'utilisateur qui a lancé la commande :
$ fc-cache -fv
......
fc-cache: succeeded
La commande pour rechercher parmi les polices répertoriées par le cache, est de la forme fc-list filtre affichage,
filtre permet de filtrer les polices concernées, selon des critères de nom de fichier (file="un nom de fichier"), de nom de famille (family="un nom de famille", une langue (lang=xx), un style regular, bold, .... (style="un nom de style")
affichage est le paramètre à afficher. Il peut-être vide (tous les paramètres sont affichés), file, family, lang, style pour faire afficher le critère correspondant. Plusieurs paramètres peuvent être sélectionnés.
Exemples :
Liste par nom de fichier (file)
$ fc-list : file
/usr/share/fonts/truetype/liberation/LiberationSans-Bold.ttf:
/usr/share/fonts/truetype/tlwg/Kinnari-BoldItalic.ttf:
.....
Liste par nom de polices (family)
$ fc-list : family
OpenSymbol
Droid Sans Mono
Droid Arabic Kufi
.......
Le nom de la police n'est pas nécessairement identique à celui qui est utilisé dans le nom de fichier - attention aux espaces, -, _ etc.... Dans l'exemple ci-dessous, le nom de la police est "Lobster two" alors que le nom de fichier fait référence à lobster!
$ fc-list : file |grep -i lobster
....
/usr/share/fonts/opentype/lobster/lobster.otf:
......
$ fc-list : family |grep Lobster
Lobster Two
Liste des styles (style) disponibles dans une police donnée
$ fc-list :family="Lobster Two" style
:style=Regular
:style=Bold Italic
:style=Bold
:style=Italic
Liste des langues (lang) disponibles dans une police donnée
$ fc-list :family="Droid Arabic Kufi" lang
:lang=ar|az-ir|fa|ku-ir|ps-af|ps-pk|ug|ur|ku-iq|ota|pa-pk|sd|lah
Liste des familles disponibles dans une langue donnée (hindou par exemple) :
$ fc-list :lang="hi" family
FreeSerif
FreeSans
La commande fc-match permet d'afficher la correspondance entre un nom de police et la police qui sera utilisée.
Si la police est installée, elle est affichée
$ fc-match "liberation sans"
LiberationSans-Regular.ttf: "Liberation Sans" "Regular"
$ fc-match "freesans"
FreeSans.ttf: "FreeSans" "нормален"
Sinon, la meilleure équivalence est proposée. Dans l'exemple ci-desous, arial, times et courrier sont utilisés à la place de Liberation Sans, Serif et Mono
$ fc-match "arial"
LiberationSans-Regular.ttf: "Liberation Sans" "Regular"
$ fc-match "times"
LiberationSerif-Regular.ttf: "Liberation Serif" "Regular"
$ fc-match "courier"
LiberationMono-Regular.ttf: "Liberation Mono" "Regular"
$ fc-match sans
LiberationSans-Regular.ttf: "Liberation Sans" "Regular"
$ fc-match serif
LiberationSerif-Regular.ttf: "Liberation Serif" "Regular"
$ fc-match mono
LiberationMono-Regular.ttf: "Liberation Mono" "Regular"
$ fc-match cursive
LobsterTwo-Regular.otf: "Lobster Two" "Regular"
$ fc-match fantasy
Purisa.ttf: "Purisa" "Medium"
$ fc-match inconnu
LiberationSans-Regular.ttf: "Liberation Sans" "Regular"
Le fichier fonts.conf permet de définir des alias pour les familles CSS. Créer sur le modèle ci-deesous un fichier ~/.config/fontconfig
$ nano ~/.config/fontconfig/fonts.conf
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig> <!-- Fichier de configuration fonts.conf -->
<!--
Définition des alias pour les familles serif, sans-serif, monospace, cursive et fantasy :
-->
<alias>
<family>serif</family><prefer><family>Liberation Serif</family></prefer></alias>
<alias>
<family>sans-serif</family><prefer><family>Liberation Sans</family></prefer></alias>
<alias>
<family>monospace</family><prefer><family>Liberation Mono</family></prefer></alias>
<alias>
<family>cursive</family><prefer><family>Lobster two</family></prefer></alias>
<alias>
<family>fantasy</family><prefer><family>Purisa</family></prefer></alias>
</fontconfig>
L'onglet Polices du Menu Apparence de xfce4, permet de sélectionner la police système
La configuration des polices de l'écran de lightdm s'effectue à partir du fichier lightdm-gtk-greeter.conf :
$ cat /etc/lightdm/lightdm-gtk-greeter.conf
......
font-name = Liberation Sans 10
.....