Siguiente: Arreglar notación con superposiciones, Arriba: Colisiones de objetos
Aunque pueda sorprenderle, LilyPond no es perfecto. Ciertos elementos de notación se pueden superponer, lo que es una lástima, pero en realidad es bastante poco frecuente. Normalmente la necesidad de mover objetos es por claridad o razones estéticas: el aspecto es mejor con un poco más o un poco menos de espacio de separación.
Existen tres enfoques principales que llevan a la resolución de superposiciones en la notación. Se deben considerar en el siguiente orden:
\override
. Las ventadas de hacer
cambios a este tipo de propiedad son: a) que algún otro objeto se
moverá automáticamente si es necesario, para dejarle sitio, y b) una
única sobreescritura se puede aplicar a todas las instancias del mismo
tipo de objeto. Entre tales propiedades se encuentran:
direction
(dirección)
Ya se ha estudiado con cierto detalle: véase Objetos interiores al pentagrama.
padding
(relleno), left-padding
(relleno por la
izquierda), right-padding
(relleno por la derecha),
staff-padding
(relleno de pentagrama)
Según un objeto se está colocando, el valor de su propiedad de relleno
padding
especifica el espacio intermedio que se debe dejar
entre él mismo y el límite más próximo del objeto contra el que se
está colocando. Observe que es el valor de padding
del objeto
que se está colocando el que se usa; el valor de
padding
del objeto que ya está colocado se ignora. Los
espacios intermedios especificados mediante padding
se pueden
aplicar a todos los objetos que contemplan el interface
side-position-interface
.
En lugar de con padding
, la colocación de los grupos de
alteraciones se controla con left-padding
y
right-padding
. Estas propiedades se encontrarán en el objeto
AccidentalPlacement
que, observe, vive dentro del contexto de
staff. Como las alteraciones accidentales siempre se
posicionan según las cabezas de las notas y a su izquierda, solamente
tiene algún efecto la propiedad de relleno por la derecha
right-padding
.
La propiedad staff-padding
está estrechamente relacionada con
la propiedad padding
: padding
controla la separación
mínima entre cualquier objeto que contemple el interface
side-position-interface
y el objeto más cercano (generalmente
la nota o las líneas del pentagrama); staff-padding
se aplica
sólo a los objetos que siempre se sitúan fuera del pentagrama:
controla la separación mínima entre dicho objeto y el pentagrama.
Observe que staff-padding
no tiene ningún efecto sobre objetos
que se posicionan respecto a la nota en vez de hacerlo respecto al
pentagrama, incluso aunque puede ser sobreescrito sin error por tales
objetos: simplemente se ignora.
Para descubrir qué propiedad de relleno se necesita para el objeto que quiere recolocar, debe volver al manual de RFI y buscar las propiedades del objeto. Tenga cuidado porque las propiedades de relleno podrían no estar en el objeto más obvio, así que busque en los objetos que puedan tener alguna relación con él.
Todos los valores de relleno se miden en espacios del pentagrama. Para la mayor parte de los objetos el valor se establece de forma predeterminada en aproximadamente 1.0 o menos (varía con cada objeto). Se puede sobreescribir si se necesita una separación intermedia mayor (o menor).
self-alignment-X
(Auto-alineamiento en el eje X)
Esta propiedad se puede usar para alinear el objeto a la izquierda, a
la derecha, o centrarlo con respecto al punto de referencia del objeto
«padre». Se puede usar con todos los objetos que contemplan el
interface
self-alignment-interface
. En general son objetos que contienen
texto. Los valores son LEFT
, RIGHT
o CENTER
. De
forma alternativa se puede especificar un valor numérico entre
-1
y +1
, donde -1
es alineado por la izquierda,
+1
es alineado por la derecha, y los números intermedios mueven
el texto progresivamente desde alineado por la izquierda hasta alineado
por la derecha. Se pueden especificar valores numéricos mayores de
1
para mover el texto incluso más lejos hacia la izquierda, o
menos de -1
para alejarlo más hacia la derecha. Un cambio en
1
en el valor corresponde a un movimiento de la mitad de la
longitud total del propio texto.
extra-spacing-width
(anchura de separación adicional)
Esta propiedad está disponible para todos los objetos que contemplan
el interface item-interface
. Toma dos números, el primero se
suma al límite izquierdo y el segundo se suma al límite derecho. Los
números negativos desplazan el límite a la izquierda y los positivos a
la derecha, por lo que para ensanchar un objeto el primer número debe
ser negativo y el segundo positivo. Observe que no todos los objetos
ostentan los dos números. Por ejemplo, el objeto Accidental
(alteración) sólo toma nota del primer número (el borde izquierdo).
staff-position
(posición de pentagrama)
staff-position
es una propiedad del interface
staff-symbol-referencer-interface
, que está contemplado por los
objetos que se colocan con relación al pentagrama. Especifica la
posición vertical del objeto con relación a la tercera línea del
pentagrama en medios espacios de pentagrama. Es útil en la
resolución de colisiones entre objetos de presentación como silencios
multi-compás, ligaduras de unión y notas en distintas voces.
force-hshift
(forzar desplazamiento horizontal)
Las notas muy juntas de un acorde, o aquellas que ocurren al mismo
tiempo en voces distintas, se disponen en dos (y ocasionalmente más)
columnas para evitar la superposición de las cabezas. Éstas reciben
el nombre de columnas de notas, y se crea un objeto llamado
NoteColumn
para disponer las notas en dicha columna.
La propiedad force-hshift
es una propiedad de una
NoteColumn
(realmente lo es del interface
note-column-interface
). Modificarlo permite mover una columna
de notas en unidades adecuadas a una columna de notas, por ejemplo la
anchura de la cabeza de la nota de la primera voz. Se debe usar en
situaciones complejas donde las instrucciones \shiftOn
normales
(véase Voces explícitas) no resuelven el
conflicto entre las notas. Es preferible a la propiedad
extra-offset
para este propósito porque no hay necesidad de
averiguar la distancia en espacios de pentagrama, y mover las notas
dentro o fuera de una NoteColumn
afecta a otras acciones como a
la fusión entre cabezas de nota.
extra-offset (desplazamiento adicional)
grob-interface
. Toma una pareja de números que
especifican el desplazamiento adicional en las direcciones horizontal
y vertical. Los números negativos mueven el objeto a la izquierda o
hacia abajo. Las unidades son espacios de pentagrama. El
desplazamiento adicional se hace después de que la composición
tipográfica de los objetos ha terminado, así que un objeto puede ser
reposicionado a cualquier lugar sin afectar a ninguna otra cosa.
positions (posiciones)
positions
se ha sobreescrito, la ligadura que está más cerca de
las posiciones que se han solicitado, se selecciona de la lista.
Un objeto en particular podría no tener todas estas propiedades. Es necesario ir al manual RFI para buscar qué propiedades se encuentran disponibles para el objeto en cuestión.
Aquí presentamos una lista de los objetos que es más probable que estén implicados en colisiones, con el nombre del objeto que habría que buscar en el RFI para descubrir qué propiedades se deben usar para moverlos.
Tipo de objeto | Nombre del objeto
|
---|---|
Articulaciones | Script
|
Barras | Beam
|
Dinámica (verticalmente) | DynamicLineSpanner
|
Dinámica (horizontalmente) | DynamicText
|
Digitaciones | Fingering
|
Llamadas de ensayo y textuales | RehearsalMark
|
Ligaduras de expresión | Slur
|
Texto, por ejemplo ^"texto" | TextScript
|
Ligaduras de unión | Tie
|
Grupos de valoración especial | TupletBracket
|
Esta página corresponde a LilyPond-2.11.58 (rama de desarrollo).
Informe de los fallos a través de la lista en español lilypond-es, o en inglés a través de http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs.
Se agradecen las sugerencias para la documentación.