Familles de fontes

Vous disposez de trois familles de fontes2 textuelles : une police avec empattement (sérif), une police sans empattement (sans sérif) et une police à chasse fixe (monospace ou typewriter). En fonction du moteur de rendu utilisé, ces familles seront mappées selon des alias différents.

Pour le moteur svg :

Famille génériqueFamille de fonte SVG
serifserif
sanssans-serif
typewritermonospace

« serif », « sans-serif » et « monospace » sont des « generic-family » au titre des spécifications SVG et CSS.

Pour les autres moteurs :

Famille génériqueFonte par défaut (alias)Listes de définition des alias
serifLilyPond SerifC059, Century SchoolBook URW, Century Schoolbook L, TeX Gyre Schola, DejaVu Serif, …, serif
sansLilyPond Sans SerifNimbus Sans, Nimbus Sans L, TeX Gyre Heros, DejaVu Sans, …, sans-serif
typewriterLilyPond MonospaceNimbus Mono PS, Nimbus Mono, Nimbus Mono L, TeX Gyre Cursor, DejaVu Sans Mono, …, monospace

Lorsqu’un caractère est absent de la première fonte listée, il sera remplacé par celui de la fonte suivante.

Il est à noter que les fontes URW distribuées avec LilyPond (« C059 », « Nimbus Mono PS » et « Nimbus Sans ») disposent d’une particularité : par défaut, et en complément des ligatures standard telles que « fl » ou « ffi », elles substituent la chaîne « Nr. » par le caractère « Numero Sign » (U+2116) dès lors que le script « latn » est sélectionné. On peut toutefois s’en préserver temporairement par l’insertion d’un caractère de largeur nulle et non jointant (zero-width non-joiner ZWNJ, U+200C) entre les caractères « N » et « r ». Les lignes ci-dessous auront pour conséquence que LilyPond insérera toujours un caractère ZWNJ.

\paper {
  #(add-text-replacements!
      `(("Nr." . ,(format #f "N~ar." (ly:wide-char->utf-8 #x200C)))))
}

« LilyPond Serif », « LilyPond Sans Serif » et « LilyPond Monospace » sont des alias de fonte définis dans le fichier de configuration de FontConfig spécifique à LilyPond 00-lilypond-fonts.conf qui se trouve normalement dans le répertoire /usr/local/share/lilypond/2.25.22/fonts.

Chaque famille dispose en principe de différents styles et niveaux de graisse. L’exemple qui suit illustre la manière de changer la famille, le style, la graisse ou la taille. Notez bien que l’argument fourni à font-size correspond à la correction à apporter à la taille par défaut.

\override Score.TextMark.font-family = #'typewriter
\textMark "Ouverture"
\override Voice.TextScript.font-shape = #'italic
\override Voice.TextScript.font-series = #'bold
d''2.^\markup "Allegro"
\override Voice.TextScript.font-size = -3
c''4^smaller

[image of music]

Cette syntaxe s’applique aussi en mode markup, bien que celui-ci dispose d’une syntaxe allégée comme nous l’avons vu dans Sélection de la fonte et de la taille :

\markup {
  \column {
    \line {
      \override #'((font-shape . italic) (font-size . 4))
      Idomeneo,
    }
    \line {
      \override #'(font-family . typewriter) {
        \override #'(font-series . bold) re
        di
      }
      \override #'(font-family . sans) Creta
    }
  }
}

[image of music]


Footnotes

(2)

Dans sa forme la plus simple, une famille de fonte contient habituellement les styles de police romain, italique, gras et gras italique.


GNU LilyPond – Manuel de notation v2.25.22 (development-branch).