[ << Notazione musicale ] | [Inizio][Contenuti][Indice] | [ Notazione specialistica >> ] |
[ < Testo formattato su più pagine ] | [ Su : Testo ] | [ Tipi di carattere in dettaglio > ] |
1.8.3 Tipi di carattere
Questa sezione presenta il modo in cui sono gestiti i tipi di carattere e come possono essere modificati nelle partiture.
Tipi di carattere in dettaglio | ||
Tipi di carattere per singolo oggetto | ||
Tipi di carattere per l’intero documento |
[ << Notazione musicale ] | [Inizio][Contenuti][Indice] | [ Notazione specialistica >> ] |
[ < Tipi di carattere ] | [ Su : Tipi di carattere ] | [ Tipi di carattere per singolo oggetto > ] |
Tipi di carattere in dettaglio
I tipi di carattere vengono gestiti attraverso varie librerie. FontConfig rileva i tipi di carattere disponibili nel sistema; i tipi selezionati sono riprodotti con Pango.
I tipi di carattere della notazione musicale possono essere descritti come un insieme di glifi specifici, ordinati in varie famiglie. La seguente sintassi permette di usare vari glifi Feta di LilyPond direttamente nella modalità markup:
a'1^\markup { \vcenter { \override #'(font-encoding . fetaBraces) \lookup "brace120" \override #'(font-encoding . fetaText) \column { 1 3 sf } \override #'(font-encoding . fetaMusic) \lookup "noteheads.s0petrucci" } }
Tuttavia, tutti questi glifi, ad eccezione delle graffe di varie
dimensioni contenute in fetaBraces
, sono già utilizzabili
con la sintassi ben più semplice descritta in Notazione musicale nel blocco markup.
Quando si usano i glifi contenuti in fetaBraces
, la dimensione
della graffa viene specificata dalla parte numerica del nome del glifo,
in unità arbitrarie. Può essere specificato qualsiasi numero intero da
0
a 575
compresi, dove 0
corrisponde alla graffa
più piccola. Il valore ottimale deve essere determinato per tentativi.
Questi glifi sono tutte graffe sinistre; le graffe destre si possono
ottenere con la rotazione, vedi Rotazione degli oggetti.
Sono disponibili tre famiglie di font: il font roman (con grazie), il font sans (senza grazie) e il font monospaziato typewriter.
Per il backend svg
:
Famiglia | Font predefinito |
---|---|
roman | serif |
sans | sans-serif |
typewriter | monospace |
serif
, sans-serif
, e monospace
sono
generic-family
(famiglie generiche) nelle specifiche
SVG e CSS.
Per gli altri backend:
Famiglia | Font predefinito (alias) | Elenchi di definizione di alias |
---|---|---|
roman | LilyPond Serif | TeX Gyre Schola, C059, Century SchoolBook URW, Century Schoolbook L, DejaVu Serif, ..., serif |
sans | LilyPond Sans Serif | TeX Gyre Heros, Nimbus Sans, Nimbus Sans L, DejaVu Sans, ..., sans-serif |
typewriter | LilyPond Monospace | TeX Gyre Cursor, Nimbus Mono PS, Nimbus Mono, Nimbus Mono L, DejaVu Sans Mono, ..., monospace |
LilyPond Serif
, LilyPond Sans Serif
,
e LilyPond Monospace
sono font alias definiti
nel file di configurazione FontConfig specifico per LilyPond
00-lilypond-fonts.conf
.
Se un carattere non esiste nel primo font elencato, il font successivo
dell’elenco verrà usato al suo posto per quel carattere.
I dettagli delle definizioni degli alias si trovano nel file
00-lilypond-fonts.conf
all’interno della directory
di installazione.
Ogni famiglia può avere forme e serie differenti. L’esempio seguente
illustra la possibilità di scegliere famiglie, forme, serie e
dimensioni alternative. Il valore specificato per font-size
è
la modifica relativa alla dimensione predefinita.
\override Score.RehearsalMark.font-family = #'typewriter \mark \markup "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
Una sintassi simile si usa nella modalità markup; tuttavia in questo caso è preferibile usare la sintassi più semplice spiegata in Scelta del tipo di carattere e della dimensione:
\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 } } }
Quando si usano i font OpenType, sono disponibili le funzionalità dei font. Nota bene: non tutti i font OpenType hanno a disposizione tutte le funzioni. Se si richiede una funzionalità che non esiste nel font scelto, tale funzionalità viene semplicemente ignorata.
% Maiuscoletto vero \markup { Stile normale: Hello HELLO } \markup { \caps { Maiuscoletto: Hello } } \markup { \override #'(font-features . ("smcp")) { Maiuscoletto vero: Hello } } % Stili numerici \markup { Stile numerico normale: 0123456789 } \markup { \override #'(font-features . ("onum")) { Stile numerico vecchio: 0123456789 } } % Alternative stilistiche \markup { \override #'(font-features . ("salt 0")) { Alternative stilistiche 0: εφπρθ } } \markup { \override #'(font-features . ("salt 1")) { Alternative stilistiche 1: εφπρθ } } % Funzionalità multiple \markup { \override #'(font-features . ("onum" "smcp" "salt 1")) { Funzionalità multiple: Hello 0123456789 εφπρθ } }
L’elenco completo delle funzionalità del font OpenType è consultabile qui: https://www.microsoft.com/typography/otspec/featurelist.htm
Per identificare le funzionalità dei font OpenType leggere qui: https://lists.gnu.org/archive/html/lilypond-devel/2017-08/msg00004.html
Sebbene sia semplice passare a un tipo di carattere preconfigurato, è anche possibile usare altri tipi, come viene spiegato nelle sezioni successive: Tipi di carattere per singolo oggetto e Tipi di carattere per l’intero documento.
Vedi anche
Guida alla notazione: Il font Emmentaler, Notazione musicale nel blocco markup, Rotazione degli oggetti, Scelta del tipo di carattere e della dimensione, Font.
[ << Notazione musicale ] | [Inizio][Contenuti][Indice] | [ Notazione specialistica >> ] |
[ < Tipi di carattere in dettaglio ] | [ Su : Tipi di carattere ] | [ Tipi di carattere per l'intero documento > ] |
Tipi di carattere per singolo oggetto
Si può usare nella partitura qualsiasi tipo di carattere che sia installato nel sistema operativo e riconosciuto da FontConfig, usando la seguente sintassi:
\override Staff.TimeSignature.font-name = "Bitstream Charter" \override Staff.TimeSignature.font-size = #2 \time 3/4 a'1_\markup { \override #'(font-name . "Bitstream Vera Sans,sans-serif, Oblique Bold") { Vera Oblique Bold } }
font-name può essere definito da una lista separata da virgola di ‘font’ e una lista separata da spazi di ‘stili’. Se il ‘font’ nella lista è installato e contiene il glifo richiesto, verrà usato, altrimenti sarà usato al suo posto il font successivo.
Lanciando lilypond con la seguente opzione si ottiene un elenco di tutti i tipi di carattere disponibili nel sistema operativo:
lilypond -dshow-available-fonts
Vedi anche
Guida alla notazione: Tipi di carattere in dettaglio, Tipi di carattere per l’intero documento.
Frammenti: Text.
[ << Notazione musicale ] | [Inizio][Contenuti][Indice] | [ Notazione specialistica >> ] |
[ < Tipi di carattere per singolo oggetto ] | [ Su : Tipi di carattere ] | [ Notazione specialistica > ] |
Tipi di carattere per l’intero documento
È possibile modificare i tipi di carattere usati come tipi predefiniti nelle famiglie roman, sans e typewriter specificandoli, in questo ordine, come è mostrato nell’esempio seguente, che ridimensiona automaticamente i caratteri col valore impostato per la dimensione globale del rigo. In modo analogo a Tipi di carattere per singolo oggetto, si può indicare con una lista separata da virgole di ‘font’. Gli ‘stili’ dei font, invece, non possono essere definiti. I tipi di carattere sono spiegati in Tipi di carattere in dettaglio.
\paper { #(define fonts (make-pango-font-tree "Linux Libertine O" "Nimbus Sans, Nimbus Sans L" "DejaVu Sans Mono" (/ staff-height pt 20))) } \relative c'{ c1-\markup { roman, \sans sans, \typewriter typewriter. } }
Nota: make-pango-font-tree
reimposta i font della notazione sui
predefiniti Emmentaler.
La sintassi seguente permette di cambiare font specifici, lasciando gli
altri ai valori predefiniti. L’esempio seguente produce lo stesso risultato
dell’esempio precedente di make-pango-font-tree
.
Come con make-pango-font-tree
, è possibile specificare un elenco
separato da virgola di “font” per le categorie roman
, sans
e typewriter
.
Se non si cambia la dimensione del rigo dal valore predefinito di 20 pt,
#:factor (/ staff-height pt 20)
non è necessario.
\paper { #(define fonts (set-global-fonts #:roman "Linux Libertine O" #:sans "Nimbus Sans, Nimbus Sans L" #:typewriter "DejaVu Sans Mono" #:factor (/ staff-height pt 20) ; non necessario se la dimensione del rigo è predefinita )) }
È possibile specificare anche i font della notazione. Il prossimo esempio ha anch’esso lo stesso risultato degli esempi precedenti, perché imposta i font della notazione predefiniti. Maggiori informazioni in Cambiare il tipo di carattere della notazione.
\paper { #(define fonts (set-global-fonts #:music "emmentaler" ; predefinito #:brace "emmentaler" ; predefinito #:roman "Linux Libertine O" #:sans "Nimbus Sans, Nimbus Sans L" #:typewriter "DejaVu Sans Mono" #:factor (/ staff-height pt 20) ; non necessario se la dimensione del rigo è predefinita )) }
Nota: ogni chiamata della funzione set-global-fonts
reimposta completamente
i font sia della notazione principale che del testo. Se una categoria non è
specificata, allora verrà usato il font predefinito per quella categoria.
Ogni chiamata di set-global-fonts
cambia i font di ciascun blocco
\book
che la segue.
Se ci sono molteplici blocchi \book
e si vogliono usare font diversi
per ciascuno, basta ripetere set-global-fonts
, in questo modo:
\paper { #(define fonts (set-global-fonts … )) } \book { … } \paper { #(define fonts (set-global-fonts … )) } \book { … }
Vedi anche
Guida alla notazione: Tipi di carattere in dettaglio, Tipi di carattere per singolo oggetto, Scelta del tipo di carattere e della dimensione, Font, Cambiare il tipo di carattere della notazione.
[ << Notazione musicale ] | [Inizio][Contenuti][Indice] | [ Notazione specialistica >> ] |
[ < Tipi di carattere per singolo oggetto ] | [ Su : Tipi di carattere ] | [ Notazione specialistica > ] |