4.6.2 Arreglar notación con superposiciones

Veamos ahora cómo pueden ser de ayuda las propiedades que hemos visto en la sección anterior, para resolver problemas de notación que se superpone.


La propiedad padding (relleno)

La propiedad padding se puede ajustar para aumentar (o disminuir) la distancia entre símbolos impresos encima o debajo de las notas.

c2\fermata
\override Script.padding = #3
b2\fermata

[image of music]

% This will not work, see below
\override MetronomeMark.padding = #3
\tempo 4 = 120
c1 |
% This works
\override Score.MetronomeMark.padding = #3
\tempo 4 = 80
d1 |

[image of music]

Observe en el segundo ejemplo la gran importancia que tiene saber qué contexto maneja un determinado objeto. Puesto que el objeto MetronomeMark se maneja dentro del contexto Score, los cambios de propiedades en el contexto Voice pasarán inadvertidos. Para ver más detalles, consulte Modificar las propiedades.

Si la propiedad de relleno padding de un objeto se incrementa cuando dicho objeto se encuentra en una pila de objetos que se están colocando de acuerdo a su prioridad outside-staff-priority, entonces ese objeto se moverá, y también todos los que están por fuera de él.


La propiedad right-padding (relleno por la derecha)

La propiedad right-padding afecta al espaciado entre la alteración y la nota a que se aplica. Normalmente no es necesaria, pero el espaciado predeterminado puede estar mal para ciertos glifos de alteraciones o combinaciones de glifos que se usan en música microtonal. Éstos tienen que introducirse sobreescribiendo el sello de la alteración con un elemento de marcado que contenga los símbolos deseados, así:

sesquisharp = \markup { \sesquisharp }
\relative c'' {
  c4
  % 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 |
}

[image of music]

Esto utiliza necesariamente una sobreescritura para el sello de la alteración que no se estudiará hasta más adelante. El tipo de sello debe ser un procedimiento, aquí modificado para que imprima el contenido de la propiedad text del objeto Accidental, que a su vez está establecido como un signo de sesquisostenido. Entonces el signo se puede separar de la cabeza de la nota sobreescribiendo right-padding.


La propiedad staff-padding (relleno de pentagrama)

staff-padding se puede usar para alinear objetos como matices dinámicos a lo largo de una línea de base a una altura fija sobre el pentagrama, en lugar de hacerlo a una altura que dependa de la posición de la nota a la que están adosados. No es una propiedad de DynamicText sino de DynamicLineSpanner. Esto es así porque la línea de base debe aplicarse por igual a todas las dinámicas, entre ellas las que se han creado como objetos de extensión. Así que ésta es la forma de alinear las indicaciones de matiz en el ejemplo de la sección anterior:

\dynamicUp
% Extend width by 1 unit
\override DynamicText.extra-spacing-width = #'(-0.5 . 0.5)
% Align dynamics to a base line 2 units above staff
\override DynamicLineSpanner.staff-padding = #2
a4\f b\mf a\mp b\p

[image of music]


La propiedad self-alignment-X (auto-alineación en X)

El ejemplo siguiente muestra cómo ajustar la posición de un objeto de digitación de cuerda en relación a la plica de una nota mediante el alineamiento del límite derecho con el punto de referencia de la nota «padre»:

\voiceOne
<a\2>
\once \override StringNumber.self-alignment-X = #RIGHT
<a\2>

[image of music]


La propiedad staff-position (posición en el pentagrama)

Los silencios multi-compás en una voz pueden chocar con las notas en otra voz. Puesto que estos silencios se tipografían centrados entre las barras de compás se necesitaría bastante esfuerzo para que LilyPond averiguara qué otras notas podrían chocar con él, ya que actualmente todo el manejo de colisiones entre notas y silencios se hace solamente para notas y silencios que ocurren al mismo tiempo. He aquí un ejemplo de colisión de este tipo:

<< { c4 c c c } \\ { R1 } >>

[image of music]

La mejor solución aquí es mover el silencio multi-compás hacia abajo, pues el silencio está en la voz dos. El ajuste predeterminado para \voiceTwo (es decir, en la segunda voz de una construcción <<{…} \\ {…}>>) es que staff-position tenga el valor -4 para MultiMeasureRest, así que tenemos que bajarlo, digamos, cuatro semi-espacios de pentagrama, al valor -8.

<<
  { c4 c c c }
  \\
  \override MultiMeasureRest.staff-position = #-8
  { R1 }
>>

[image of music]

Esto es mejor que utilizar, por ejemplo, extra-offset, porque la línea adicional por encima del silencio se inserta automáticamente.


La propiedad extra-offset (desplazamiento adicional)

La propiedad extra-offset da un completo control sobre el posicionamiento de un objeto tanto vertical como horizontalmente.

En el ejemplo siguiente, la segunda digitación se desplaza ligeramente a la izquierda, y 1.8 espacios de pentagrama hacia abajo:

\stemUp
f4-5
\once \override Fingering.extra-offset = #'(-0.3 . -1.8)
f4-5

[image of music]


La propiedad positions (posiciones)

La propiedad positions permite controlar manualmente la posición vertical y de ahí también la inclinación de los tresillos, ligaduras de expresión y de fraseo, y barras de corchea.

He aquí un ejemplo en el que las ligaduras de fraseo y de expresión chocan entre sí:

a8 \( ( a'16 ) a \)

[image of music]

Una posibilidad sería mover los dos extremos de la ligadura de fraseo hacia arriba. Podemos tratar de establecer el extremo izquierdo a 2.5 espacios de pentagrama por encima de la tercera línea y el extremo derecho a 4.5 también hacia arriba, y LilyPond seleccionaría la ligadura de fraseo de entre las candidatas que ha encontrado con sus extremos más cercanos a éstos:

\once \override PhrasingSlur.positions = #'(2.5 . 4.5)
a8 \( ( a'16 ) a \)

[image of music]

Esto supone una mejora, pero ¿por qué no bajar un poco el extremo derecho de la ligadura de expresión? Si lo probamos, veremos que no se puede hacer así. Ello es a causa de que no existen ligaduras de expresión candidatas que estén más bajas que la que ya se ha seleccionado, y en este caso la propiedad positions no tiene ningún efecto. Sin embargo, las ligaduras de unión, expresión y fraseo se pueden colocar y conformar de manera muy exacta cuando se necesita. Para aprender la manera de hacerlo, consulte Modificación de ligaduras de unión y de expresión.

Presentamos otro ejemplo. Vemos que la barra choca con las ligaduras:

{
  \time 4/2
  <<
    { c'1 ~ c'2. e'8 f' }
    \\
    { e''8 e'' e'' e''  e'' e'' e'' e''  f''2 g'' }
  >>
  <<
    { c'1 ~ c'2. e'8 f' }
    \\
    { e''8 e'' e'' e''  e'' e'' e'' e''  f''2 g'' }
  >>
}

[image of music]

Esto se puede resolver manualmente elevando los dos extremos de la barra desde su posición a 1.81 espacios de pentagrama bajo la línea central hasta, digamos, 1 espacio:

{
  \time 4/2
  <<
    { c'1 ~ c'2. e'8 f' }
    \\
    {
      \override Beam.positions = #'(-1 . -1)
      e''8 e'' e'' e''  e'' e'' e'' e''  f''2 g''
    }
  >>
  <<
    { c'1 ~ c'2. e'8 f' }
    \\
    { e''8 e'' e'' e''  e'' e'' e'' e''  f''2 g'' }
  >>
}

[image of music]

Observe que la sobreescritura sigue aplicándose en la primera voz del segundo compás de corcheas, pero no a ninguna de las barras de la segunda voz.


La propiedad force-hshift (forzar desplazamiento horizontal)

Ahora podremos ver cómo aplicar las correcciones finales al ejemplo de Chopin que presentamos al final de Oigo voces, que dejamos con este aspecto:

\new Staff \relative c'' {
  \key aes \major
  <<
    { c2 aes4. bes8 }
    \\
    { <ees, c>2 des }
    \\
    \\
    { aes'2 f4 fes }
  >> |
  <c ees aes c>1 |
}

[image of music]

Es necesario que la nota interior del primer acorde (el La bemol de la cuarta voz) no se aparte de la columna vertical de la nota aguda. Para corregirlo, ajustamos a cero el valor para esta nota de force-hshift, que es una propiedad de NoteColumn.

En el segundo acorde preferimos que el Fa esté alineado con el La bemol y que la nota grave se coloque ligeramente a la derecha para evitar una colisión de las plicas. Lo conseguimos ajustando el valor de force-hshift en la NoteColumn del Re bemol grave para moverlo a la derecha medio espacio de pentagrama.

Presentamos a continuación el resultado final:

\new Staff \relative c'' {
  \key aes \major
  <<
    { c2 aes4. bes8 }
    \\
    {
      <ees, c>2
      \once \override NoteColumn.force-hshift = #0.5
      des2
    }
    \\
    \\
    {
      \override NoteColumn.force-hshift = #0
      aes'2 f4 fes
    }
  >> |
  <c ees aes c>1 |
}

[image of music]


Otros idiomas: English, česky, deutsch, français, italiano, 日本語, nederlands.
Acerca de la selección automática del idioma.

LilyPond — Manual de aprendizaje v2.17.97 (rama de desarrollo).