[ << Ajustament de la sortida ] | [Part superior][Continguts][Índex] | [ Plantilles >> ] |
[ < Moviment d'objectes ] | [ Amunt : Col·lisions d'objectes ] | [ La propietat padding (farciment) > ] |
5.6.2 Ajustament de la notació amb superposicions
Vejam ara com poden ser d’ajuda les propietats que hem vist a 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
% Això no funcionarà, mireu a sota \override MetronomeMark.padding = #3 \tempo 4 = 120 c'1 | % Això funciona \override Score.MetronomeMark.padding = #3 \tempo 4 = 80 d'1 |
Observeu al segon exemple la gran importància que té saber quin
context respecta un determinat objecte. Atès que l’objecte
MetronomeMark
respecta el context Score
, els canvis
de propietats al 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 a la seva prioritat
outside-staff-priority
, llavors 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 la
alteració i la nota a la qual s’aplica. Normalment no és
necessària, però l’espaiat predeterminat pot estar malament per
certes glifs d’alteracions o combinacions de glifs que s’usen a la
música microtonal. Aquests glifs han d’introduir-se
sobreescrivint el segell de l’alteració amb un element de marcatge
que contingui els símbols desitjats, així:
sesquisharp = \markup { \sesquisharp } \relative { c''4 % Això imprimeix un sesquisostingut però l'espaiat és massa petit \once \override Accidental.stencil = #ly:text-interface::print \once \override Accidental.text = #sesquisharp cis4 c % Això millora l'espaiat \once \override Score.AccidentalPlacement.right-padding = #0.6 \once \override Accidental.stencil = #ly:text-interface::print \once \override Accidental.text = #sesquisharp cis4 | }
Aixo utilitza necessàriament una sobreescriptura per al segell de
l’alteració que s’estudiarà fin més endavant. El tipus de segell
ha de ser un procediment, aquí modificat perquè 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 de la 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 major al pentagrama. No és una propietat
de DynamicText
sinó de DynamicLineSpanner
.
Això és així perquè la línia de base s’ha d’aplicar per igual a
totes las dinàmiques, entre elles las que s’han creat
com objectes de extensió. Així que aquesta és 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 en una veu poden xocar amb les notes a una altra veu. Atès que aquests silencis es graven centrats entre les barres de compàs, es necessitaria força esforç perquè el LilyPond esbrinés quines altres notes podrien xocar amb ell, ja que actualment tota la gestió de col·lisions entre notes i silencis es fa sols per a notes i silencis que ocorren al mateix temps. Vet aquí 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 silencia està a la veu dos. L’ajust predeterminat per a
\voiceTwo
(és a dir, a la segona veu d’una construcció
<<{…} \\ {…}>>
) és que
staff-position
tingui el valor -4 per MultiMeasureRest,
així que l’hem de baixar, 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 objecte tan 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:
f'4-5 \once \override Fingering.extra-offset = #'(-0.3 . -1.8) f'4-5
La propietat positions
(posicions)
La propietat positions
permet controlar manualment la
posició vertical i des d’aquí també la inclinació dels tresets,
lligadures d’expressió i de fraseig, i barres de corxera.
Vet aquí un exemple en el 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 a dalt. Podem intentar establir l’extrem esquerre a 2.5 espais de pentagrama per sobre de la tercera línia i l’extrem dret a 4.5 també cap amunt, 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 a causa que no existeixen 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ó, expressió i
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ó.
Presentem un altre exemple. Veiem que la barra xoca amb les lligadures:
{ \time 4/2 << \relative { c'1~ 2. e8 f } \\ \relative { e''8 e e e e e e e f2 g } >> << \relative { c'1~ 2. e8 f } \\ \relative { e''8 e e e e e e e f2 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 << \relative { c'1~ 2. e8 f } \\ \relative { \override Beam.positions = #'(-1 . -1) e''8 e e e e e e e f2 g } >> << \relative { c'1~ 2. e8 f } \\ \relative { e''8 e e e e e e e f2 g \revert Beam.positions } >> }
Observeu que la sobreescriptura segueix aplicant-se a la segona veu del segon compàs de corxeres, però no a cap de les barres de la primera veu, ni tan sols a les que estan al segon compàs, que és posterior. Tan aviat com la sobreescriptura no pugui tenir cap efecte, hauria de ser revertida com es mostra.
La propietat force-hshift
(forçar desplaçament horitzontal)
Ara podem veure com aplicar les correccions finals a l’exemple de Chopin que vam present al final de Sento veus, que deixem 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, per la qual cosa usem \shiftOff
.
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 fixant
force-hshift
per al Fa al valor zero. Observeu que usem
\once
per evitar que els ajustament es propaguin més enllà
del moment musical immediat, tot i que a aquest petit exemple es
podria ometre el \once
y 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 \shiftOff aes'2 \once \shiftOff f4 fes } >> | <c ees aes c>1 | }