[ << Musical notation ] | [Top][Contents][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Multi-page markup ] | [ Up : Text ] | [ Fonts explained > ] |
1.8.3 Fonts
This section presents the way fonts are handled, and how they may be changed in scores.
Fonts explained | ||
Single entry fonts | ||
Entire document fonts |
[ << Musical notation ] | [Top][Contents][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Fonts ] | [ Up : Fonts ] | [ Single entry fonts > ] |
Fonts explained
Fonts are handled through several libraries. FontConfig is used to detect available fonts on the system; the selected fonts are rendered using Pango.
Music notation fonts can be described as a set of specific glyphs,
ordered in several families. The following syntax allows various
LilyPond feta
non-text fonts to be used directly in markup
mode:
a1^\markup { \vcenter { \override #'(font-encoding . fetaBraces) \lookup #"brace120" \override #'(font-encoding . fetaText) \column { 1 3 sf } \override #'(font-encoding . fetaMusic) \lookup #"noteheads.s0petrucci" } }
However, all these glyphs except the braces of various sizes contained
in fetaBraces
are available using the simpler syntax described
in Music notation inside markup.
When using the glyphs contained in fetaBraces
, the size of the
brace is specified by the numerical part of the glyph name, in
arbitrary units. Any integer from 0
to 575
inclusive
may be specified, 0
giving the smallest brace. The optimum
value must be determined by trial and error. These glyphs are all
left braces; right braces may be obtained by rotation, see
Rotating objects.
Three families of text fonts are made available: the roman (serif) font, that defaults to New Century Schoolbook, the sans font and the monospaced typewriter font – these last two families are determined by the Pango installation.
Each family may include different shapes and series. The following
example demonstrates the ability to select alternate families, shapes,
series and sizes. The value supplied to font-size
is the
required change from the default size.
\override Score.RehearsalMark #'font-family = #'typewriter \mark \markup "Ouverture" \override Voice.TextScript #'font-shape = #'italic \override Voice.TextScript #'font-series = #'bold d2.^\markup "Allegro" \override Voice.TextScript #'font-size = #-3 c4^smaller
A similar syntax may be used in markup mode; however in this case it is preferable to use the simpler syntax explained in Selecting font and font size:
\markup { \column { \line { \override #'(font-shape . italic) \override #'(font-size . 4) Idomeneo, } \line { \override #'(font-family . typewriter) { \override #'(font-series . bold) re di } \override #'(font-family . sans) Creta } } }
Although it is easy to switch between preconfigured fonts, it is also possible to use other fonts, as explained in the following sections: Single entry fonts and Entire document fonts.
See also
Notation Reference: The Feta font, Music notation inside markup, Selecting font and font size, Font.
[ << Musical notation ] | [Top][Contents][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Fonts explained ] | [ Up : Fonts ] | [ Entire document fonts > ] |
Single entry fonts
Any font that is installed on the operating system and recognized by FontConfig may be used in a score, using the following syntax:
\override Staff.TimeSignature #'font-name = #"Bitstream Charter" \override Staff.TimeSignature #'font-size = #2 \time 3/4 a1_\markup { \override #'(font-name . "Vera Bold") { Vera Bold } }
The following command displays a list of all available fonts on the operating system:
lilypond -dshow-available-fonts x
See also
Notation Reference: Fonts explained, Entire document fonts.
Snippets: Text.
[ << Musical notation ] | [Top][Contents][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Single entry fonts ] | [ Up : Fonts ] | [ Specialist notation > ] |
Entire document fonts
It is possible to change the fonts to be used as the default fonts in the roman, sans and typewriter font families by specifying them, in that order, as shown in the example below. For an explanation of fonts, see Fonts explained.
\paper { myStaffSize = #20 #(define fonts (make-pango-font-tree "Times New Roman" "Nimbus Sans" "Luxi Mono" (/ myStaffSize 20))) } \relative c'{ c1-\markup { roman, \sans sans, \typewriter typewriter. } }
See also
Notation Reference: Fonts explained, Single entry fonts, Selecting font and font size, Font.
[ << Musical notation ] | [Top][Contents][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Single entry fonts ] | [ Up : Fonts ] | [ Specialist notation > ] |