| [ << Ajustament de la sortida ] | [Part superior][Continguts][Índex][ ? ] | [ Plantilles >> ] | ||
| [ < Moviment d'objectes ] | [ Amunt : Col·lisions d'objectes ] | [ La propietat padding (farciment) > ] | ||
4.6.2 Arreglar notació amb superposicions
Vegem ara com poden ser d’ajuda les propietats que hem vist en la secció anterior, per resoldre problemes de notació que se superposa.
La propietat padding (farciment)
La propietat padding es pot ajustar per augmentar (o
disminuir) la distància entre símbols impresos a sobre o a sota de
les notes.
c'2\fermata \override Script.padding = #3 b2\fermata
% This will not work, see below \override MetronomeMark.padding = #3 \tempo 4 = 120 c'1 | % This works \override Score.MetronomeMark.padding = #3 \tempo 4 = 80 d'1 |
Observeu que al segon exemple la gran importància que té saber
quin context manega un determinat objecte. Posat que l’objecte
MetronomeMark es manega dins del context Score, els
canvis de propietats en el context Voice passaran
inadvertits. Per veure més detalls, consulteu
Modificació de les propietats.
Si la propietat de farciment padding d’un objecte
s’incrementa quan aquest objecte es troba a una pila d’objectes
que s’estan col·locant d’acord amb la seva prioritat
outside-staff-priority, aleshores aquest objecte es mourà,
i també tots els que estan per fora d’ell.
La propietat right-padding (farciment per la dreta)
La propietat right-padding afecta l’espaiat entre
l’alteració i la nota a la qual s’aplica. Normalment no és
necessària, però l’espaiat predeterminat pot estar malament per a
certs glifs d’alteracions o combinacions de glifs que s’usen en
música microtonal. Aquests glifs s’han d’introduir sobreescrivint
el segell de l’alteració amb un element d’etiquetatge que
contingui els símbols desitjats, com segueix:
sesquisharp = \markup { \sesquisharp }
\relative {
c''4
% This prints a sesquisharp but the spacing is too small
\once \override Accidental.stencil = #ly:text-interface::print
\once \override Accidental.text = #sesquisharp
cis4 c
% This improves the spacing
\once \override Score.AccidentalPlacement.right-padding = #0.6
\once \override Accidental.stencil = #ly:text-interface::print
\once \override Accidental.text = #sesquisharp
cis4 |
}
Això utilitza necessàriament una sobrescriptura per al segell de
l’alteració que no s’estudiarà fins més endavant. El tipus de
segell ha de ser un procediment, aquí modificat perquè s’imprimeixi
el contingut de la propietat text de l’objecte
Accidental, que al seu cop està establert com un signe de
sesquisostingut. Aleshores el signe es pot separar del cap de la
nota sobreescrivint right-padding.
La propietat staff-padding (farciment de pentagrama)
staff-padding es pot usar per alinear objectes com matisos
dinàmics al llarg d’una línia de base a una distància fixa del
pentagrama, sempre que no existeixi cap altre element de notació
que forci una distància més gran al pentagrama. No és una
propietat de DynamicText sinó de DynamicLineSpanner.
Això és així perquè la línia de base ha d’aplicar-se per igual a
totes les dinàmiques, entre elles les que s’han creat com
objectes d’extensió. Així que aquesta es la forma d’alinear les
indicacions de matís a l’exemple de la secció anterior:
\override DynamicLineSpanner.staff-padding = #3
\relative { a'4\f b\mf a\p b\mp }
La propietat self-alignment-X (auto-alineació en X)
L’exemple següent mostra com ajustar la posició d’un objecte de digitació de corda en relació a la plica d’una nota mitjançant l’alineament del límit dret amb el punt de referència de la nota «pare»:
\voiceOne <a''\2> \once \override StringNumber.self-alignment-X = #RIGHT <a''\2>
La propietat staff-position (posició al pentagrama)
Els silencis multi-compàs a una veu poden xocar amb les notes en una altre veu. Atès que aquests silencis es composin centrats entre les barres de compàs es necessitaria força esforç perquè el LilyPond esbrini quines altres notes poden xocar amb eĺls, ja que en realitat tota la gestió de col·lisions entre notes i silencis es fa solament per a notes i silencis que passen al mateix moment. Heus ací un exemple de col·lisió d’aquest tipus:
<< \relative { c'4 c c c } \\ { R1 } >>
La millor solució aquí és moure el silenci multi-compàs cap avall,
ja que el silenci està en la veu dos. L’ajustament predeterminat per a
\voiceTwo (és a dir, en la segona veu d’una construcció
<<{…} \\ {…}>>) és que
staff-position tingui el valor -4 per a MultiMeasureRest,
així que hem de baixar-lo, diguem-ne quatre semiespais de
pentagrama, al valor -8.
<<
\relative { c'4 c c c }
\\
\override MultiMeasureRest.staff-position = #-8
{ R1 }
>>
Això és millor que utilitzar, per exemple, extra-offset,
perquè la línia addicional per sobre del silenci s’insereix
automàticament.
La propietat extra-offset (desplaçament addicional)
La propietat extra-offset dóna un complet control sobre el
posicionament d’un objectes tant vertical com horitzontalment.
A l’exemple següent, la segona digitació es desplaça lleugerament a l’esquerra, i 1,8 espais de pentagrama cap avall:
\stemUp f4-5 \once \override Fingering.extra-offset = #'(-0.3 . -1.8) f4-5
La propietat positions (posicions)
La propietat positions permet controlar manualment la
posició vertical i d’aquesta manera també la inclinació dels
tresets, lligadures d’expressió i de fraseig, i barres de
corxera.
Heus ací un exemple en al qual les lligadures de fraseig i d’expressió xoquen entre sí:
\relative { a'8 \( ( a'16 ) a \) }
Una possibilitat seria moure els dos extrems de la lligadura de fraseig cap amunt. Podem intentar establir l’extrem esquerre a 2,5 espais de pentagrama per sobre de la tercera línia i l’extrem dret de 4,5 també cap a munt, i el LilyPond seleccionaria la lligadura de fraseig d’entre les candidates que ha trobat amb els seus extrems més propers a ells:
\once \override PhrasingSlur.positions = #'(2.5 . 4.5) a'8 \( ( a''16 ) a'' \)
Això suposa una millora, però perquè no baixar una mica l’extrem
dret de la lligadura d’expressió? Si ho provem, veurem que no es
pot fer així. Això és degut a què no hi ha lligadures d’expressió
candidates que estiguin més baixes que la que ja s’ha seleccionat,
i en aquest cas la propietat positions no té cap efecte.
Malgrat això, les lligadures d’unió, d’expressió i de fraseig
es poden col·locar i ajustar de manera molt exacta quan
cal. Per aprendre la manera de fer-lo, consulteu
Modificació de lligadures d’unió i d’expressió.
A continuació presentem un altre exemple. Vegem que la barra xoca amb les lligadures:
{
\time 4/2
<<
{ c'1 ~ 2. e'8 f' }
\\
{ e''8 e'' e'' e'' e'' e'' e'' e'' f''2 g'' }
>>
<<
{ c'1 ~ 2. e'8 f' }
\\
{ e''8 e'' e'' e'' e'' e'' e'' e'' f''2 g'' }
>>
}
Això es pot resoldre manualment elevant els dos extrems de la barra des de la seva posició a 1,81 espais de pentagrama sota la línia central fins, diguem-ne, 1 espai:
{
\time 4/2
<<
{ c'1 ~ 2. e'8 f' }
\\
{
\override Beam.positions = #'(-1 . -1)
e''8 e'' e'' e'' e'' e'' e'' e'' f''2 g''
}
>>
<<
{ c'1 ~ 2. e'8 f' }
\\
{ e''8 e'' e'' e'' e'' e'' e'' e'' f''2 g'' }
>>
}
Observeu que la sobreescriptura segueix aplicant-se a la primera veu del segon compàs de corxeres, però no a cap de les barres de la segona veu.
La propietat force-hshift (forçament del desplaçament horitzontal)
Ara podrem veure com aplicar les correccions finals a l’exemple de Chopin que present al final de Sento veus, que vam deixar amb aquest aspecte:
\new Staff \relative {
\key aes \major
<<
{ c''2 aes4. bes8 }
\\
{ <ees, c>2 des }
\\
\\
{ aes'2 f4 fes }
>> |
<c ees aes c>1 |
}
És necessari que la nota interior del primer acord (el La bemoll
de la quarta veu) no s’aparti de la columna vertical de la nota
aguda. Podríem esperar corregir-lo mitjançant l’ús de
\shiftOff, però això produeix advertiments sobre columnes
de notes que col·lisionen. En lloc d’això, ajustem a zero el
valor per a aquesta nota de force-hshift, que és una
propietat de NoteColumn.
En el segon acord preferim que el Fa estigui alineat amb el La
bemoll i que la nota greu es col·loqui lleugerament a la dreta per
evitar una col·lisió de les pliques. Ho aconseguim ajustant el
valor de force-hshift a la NoteColumn del Re bemoll
greu per moure’l a la dreta mig espai de pentagrama, i establint
force-hshift per al Fa al valor zero. Observeu que usem
\once per evitar que els ajustos es propaguin més enllà del
moment musical immediat, tot i que a aquest exemple podrien
ometre’s el \once i el segon \override de la quarta
veu. Això no suposaria una bona pràctica.
Presentem a continuació el resultat final:
\new Staff \relative {
\key aes \major
<<
{ c''2 aes4. bes8 }
\\
{ <ees, c>2 \once \override NoteColumn.force-hshift = 0.5 des }
\\
\\
{ \once \override NoteColumn.force-hshift = 0 aes'2
\once \override NoteColumn.force-hshift = 0 f4 fes }
>> |
<c ees aes c>1 |
}
Altres idiomes: English, česky, deutsch, español, français, italiano, 日本語, nederlands.
Quant a selecció automàtica de l'idioma.