[ << Problemas de espaciado ] | [Arriba][Índice general][Índice][ ? ] | [ Cambiar los valores por omisión >> ] | ||
[ < Saltos de página óptimos ] | [ Subir : Saltos ] | [ Saltos de página mínimos > ] |
4.3.4 Paso de página óptimo
Con frecuencia es necesario encontrar una configuración de división de
páginas de manera que haya un silencio al final de una página de cada
dos. De esta forma, el músico puede pasar la página sin perder notas.
La función ly:page-turn-breaking
trata de encontrar una
división de páginas que haga mínimos el apretujamiento y el
estiramiento, pero con la restricción añadida de que sólo se permite
introducir vueltas de página en los lugares especificados.
Hay dos etapas en el uso de esta función de división de páginas. En
primer lugar debemos habilitarlo en el bloque \paper
, como se
explicó en Saltos de página. Entonces debemos decirle a la función
dónde nos gustaría permitir los saltos de página.
Hay dos formas de conseguir la segunda tarea. Primero, podemos
especificar manualmente cada uno de los pasos de página potenciales,
insertando \allowPageTurn
en nuestro archivo de entrada en los
lugares adecuados.
Si esto es demasiado tedioso, podemos añadir un grabador
Page_turn_engraver
a un contexto Staff o Voice. El grabador
Page_turn_engraver
analizará el contexto en busca de secciones
sin notas (observe que no busca silencios, sino la ausencia de notas.
Se hace así para que la polifonía en un solo pentagrama con silencios
en una de las voces no arruine la labor del grabador
Page_turn_engraver
). Cuando encuentra una sección sin notas
suficientemente larga, el grabador Page_turn_engraver
inserta
un \allowPageTurn
en la última barra de compás de dicha
sección, a no ser que haya una barra ‘especial’ de compás (como una
doble barra), en cuyo caso se insertará el \allowPageTurn
en la
última barra ‘especial’ de compás de la sección.
El grabador Page_turn_engraver
lee la propiedad de contexto
minimumPageTurnLength
para determinar qué longitud debe tener
una sección sin notas antes de que se considere la posibilidad de un
paso de página. El valor predeterminado para
minimumPageTurnLength
es #(ly:make-moment 1 1)
. Si
quiere inhabilitar las vueltas de página, puede establecerlo a algún
valor muy grande.
\new Staff \with { \consists "Page_turn_engraver" } { a4 b c d | R1 | % aquí se permite un salto de página a4 b c d | \set Staff.minimumPageTurnLength = #(ly:make-moment 5 2) R1 | % aquí no se permite un salto de página a4 b r2 | R1*2 | % aquí se permite un salto de página a1 }
El grabador Page_turn_engraver
detecta las repeticiones de
primera y segunda vez. Sólo permite un pase de página durante la
repetición si hay suficiente tiempo al principio y al final de la
repetición para volver a pasar la página hacia atrás. El grabador
Page_turn_engraver
también puede inhabilitar los pasos de
página si la repetición es muy corta. Si establecemos la propiedad de
contexto minimumRepeatLengthForPageTurn
entonces el grabador
Page_turn_engraver
sólo permitirá los pases de página en las
repeticiones cuya duración sea mayor que este valor.
Las instrucciones de paso de página, \pageTurn
,
\noPageTurn
y \allowPageTurn
, se pueden usar también en
el nivel más elevado del código, entre las partituras y los elementos
de marcado del nivel superior.
Instrucciones predefinidas
\pageTurn
,
\noPageTurn
,
\allowPageTurn
.
Véase también
Fragmentos de código: Spacing.
Advertencias y problemas conocidos
Sólo debería haber un grabador Page_turn_engraver
dentro de una
partitura. Si hay más de uno, se interferirán entre sí.
[ << Problemas de espaciado ] | [Arriba][Índice general][Índice][ ? ] | [ Cambiar los valores por omisión >> ] | ||
[ < Saltos de página óptimos ] | [ Subir : Saltos ] | [ Saltos de página mínimos > ] |