Referencia de la notación de GNU LilyPond: 4.1.4 Variables de espaciado de \paper verticales flexibles

### 4.1.4 Variables de espaciado de `\paper` verticales flexibles

En casi todos los casos es preferible que las distancias verticales entre ciertos elementos (como márgenes, títulos, sistemas y las distintas partituras) sean flexibles, de manera que se amplíen y compriman adecuadamente dependiendo de la situación. Están disponibles un cierto número de variables del bloque `\paper` (relacionadas más abajo) para realizar un ajuste fino del comportamiento de estas dimensiones frente a su ampliación o compresión.

Observe que las variables de `\paper` que se estudian en esta sección no controlan el espaciado de los pentagramas que están dentro de los sistemas individuales. El espaciado dentro de los sistemas se controla por medio de propiedades de grob, con ajustes que se escriben normalmente dentro de un bloque `\score` o `\layout`, y no dentro del bloque `\paper`. Véase Espaciado vertical flexible dentro de los sistemas.

#### Estructura de las listas-A de espaciado vertical flexible

Cada una de las variables de espaciado de `\paper` flexibles es una lista-A (lista asociativa) que contiene cuatro claves:

- `basic-distance` (distancia básica): distancia vertical, medida en espacios de pentagrama, entre los puntos de referencia de los dos elementos, cuando no resulte ninguna colisión, y no se produzca ninguna ampliación o compresión. El punto de referencia de un elemento de marcado (de título o del nivel jerárquico superior) es su punto más alto, y el punto de referencia de un sistema es el centro vertical del `StaffSymbol` más cercano (incluso si se trata de una línea que no es un pentagrama, como un contexto `Lyrics`). Los valores de `distancia básica` menores de `padding` o de `minimum-distance` no son significativos, porque la distancia resultante nunca será menor de `padding` o de `minimum-distance`.
- `minimum-distance` (distancia mínima): la distancia vertical mínima permitida, medida en espacios de pentagrama, entre los puntos de referencia de los dos elementos, cuando se produce una compresión. Los valores de `minimum-distance` menores de `padding` no son significativos, porque la distancia resultante nunca será menor de `padding`.
- `padding` (relleno): mínimo espacio vertical vacío necesario entre los rectángulos circundantes (o las líneas de horizonte) de los dos elementos, medido en espacios de pentagrama.
- `stretchability` (ampliabilidad): medida sin unidades de la propensión relativa de esta dimensión a ampliarse. Si es cero, la distancia no se ampliará (a no ser que resultasen colisiones). Si es positiva, la significación del valor de ampliabilidad de una dimensión concreta depende solamente de su relación con los valores de `stretchability` de las otras dimensiones. Por ejemplo, si una dimensión tiene el doble de `stretchability` que otra, se ampliará con el doble de facilidad. Los valores deben ser no negativos y finitos. El valor `+inf.0` desencadena un error de programación y se ignora, pero se puede usar `1.0e7` para un muelle casi infinitamente ampliable. Si no se fija un valor, el valor predeterminado se establece a `basic-distance`. Observe que la propensión de la dimensión a comprimirse no se puede establecer directamente por el usuario y es igual a (`basic-distance` - `minimum-distance`).

Si una página tiene un margen inferior no justificado, la distancia resultante es la mayor de:

- `basic-distance`,
- `minimum-distance`, y
- `padding` más la menor distancia necesaria para eliminar las colisiones.

Para partituras de varias páginas con la parte inferior no justificada en la última página, ésta usará el mismo espaciado que la página anterior siempre y cuando haya espacio suficiente para ello.

Los métodos específicos para la modificación de las listas-A se estudian en Modificación de las listas-A. El siguiente ejemplo muestra las dos formas en que pueden modificarse estas listas-A. La primera declaración actualiza un par clave-valor individualmente, y la segunda redefine la variable completamente:

>     \paper {
>       system-system-spacing.basic-distance = #8
>       score-system-spacing =
>         #'((basic-distance . 12)
>            (minimum-distance . 6)
>            (padding . 1)
>            (stretchability . 12))
>     }

#### Lista de variables de espaciado de `\paper` verticales flexibles

Los nombres de estas variables siguen el formato `superior-inferior-spacing`, donde `superior` e `inferior` son los elementos que van a ser espaciados. Cada distancia se mide entre los puntos de referencia de los dos elementos (véase más arriba la descripción de la estructura de la lista-A). Observe que en estos nombres de variable, el término ‘`markup`’ se refiere tanto a elementos de marcado de título (`bookTitleMarkup` o `scoreTitleMarkup`) como a elementos de marcado del nivel superior (véase Estructura del archivo). Todas las distancias se miden en espacios de pentagrama.

Los ajustes predeterminados están definidos en el archivo ‘`ly/paper-defaults-init.ly`’.

`markup-system-spacing`

  distancia entre un elemento de marcado (de título o del nivel superior) y el sistema que le sigue.

`score-markup-spacing`

  distancia entre el último sistema de una partitura y el elemento de marcado (de título o del nivel superior) que le sigue.

`score-system-spacing`

  distancia entre el último sistema de una partitura y el primer sistema de la partitura que le sigue, cuando no existe ningún elemento de marcado (de título o del nivel superior) entre ellos.

`system-system-spacing`

  distancia entre dos sistemas dentro de la misma partitura.

`markup-markup-spacing`

  distancia entre dos elementos de marcado (de título o del nivel superior).

`last-bottom-spacing`

  distancia desde el último sistema o elemento de marcado del nivel superior en una página, hasta la parte inferior de la zona imprimible (es decir, el extremo superior del margen inferior).

`top-system-spacing`

  distancia desde la parte superior de la zona imprimible (es decir, el extremo inferior del margen superior) hasta el primer sistema de una página, cuando no hay ningún elemento de marcado (de título o del nivel superior) entre los dos.

`top-markup-spacing`

  distancia desde el extremo superior de la zona imprimible (es decir, el extremo inferior del margen superior) hasta el primer elemento de marcado (de título o del nivel superior) sobre una página, cuando no hay ningún sistema entre los dos.

#### Véase también

Referencia de la notación: Espaciado vertical flexible dentro de los sistemas.

Archivos de inicio: ‘`ly/paper-defaults-init.ly`’.

Fragmentos de código: Spacing.

#### LilyPond — Referencia de la notación v2.24.4 (rama estable).