4.1.2 Papierformat und automatische Skalierung


Das Papierformat einstellen

‚A4‘ ist der Standardwert, wenn keine ausdrückliches Papierformat eingestellt ist. Es gibt jedoch zwei Funktionen, mit denen man das Papierformat ändern kann: set-default-paper-size

#(set-default-paper-size "quarto")

welcher immer auf oberster Ebene der Datei geschrieben werden muss, und set-paper-size

\paper {
  #(set-paper-size "tabliod")
}

welcher in eine \paper-Umgebung geschrieben werden muss.

Wenn die set-default-paper-size-Funktion auf oberster Ebene der Datei eingesetzt wird, muss sie vor allen \paper-Umgebungen kommen. set-default-paper-size definiert das Papierformat für alle Seiten, während set-paper-size nur das Format der Seiten bestimmt, auf die sich die \paper-Umgebung bezieht. Wenn beispielsweise die \paper-Umgebung oben in der Datei steht, dann bezieht sie sich auf alle Seiten in der Datei. Wenn die \paper-Umgebung innherhalb einer \book-Umgebung steht, dann bezieht sie sich nur auf das eine Buch.

Wenn die set-paper-size-Funktion eingesetzt wird, muss sie vor allen anderen Funktionen stehen, die in derselben \paper-Umgebung benützt werden. Siehe Automatische Skalierung auf ein Papierformat.

Die Papierformate finden sich in der Datei ‘scm/paper.scm’ definiert. Hierhin kann man eigene Formate definieren, sie werden jedoch bei einer Aktualisierung von LilyPond überschrieben. Die vorhandenen Papierformate finden sich in Vordefinierte Papierformate.

Der folgende Befehl kann benützt werden, um ein eigenes Papierformat hinzuzufügen, welches dann mit set-default-paper-size oder set-paper-size benützt werden kann:

#(set! paper-alist (cons '("mein Format" . (cons (* 15 in) (* 3 in))) paper-alist))

\paper {
  #(set-paper-size "mein Format")
}

Die Einheiten in (Fuß), cm (Centimeter) and mm (Millimeter) können benützt werden.

Wenn das Symbol 'landscape an die Funktion set-default-paper-size gehängt wird, werden die Seiten um 90° gedreht und die Notensysteme entsprechend breiter gesetzt.

#(set-default-paper-size "a6" 'landscape)

Die Notenausgabe wird nicht gedreht, nur das Papierformat.

Siehe auch

Notationsreferenz: Automatische Skalierung auf ein Papierformat, Vordefinierte Papierformate.

Installierte Dateien: ‘scm/paper.scm’.


Automatische Skalierung auf ein Papierformat

Wenn das Papierformat mit einer der Scheme-Funktionen (set-default-paper-size oder set-paper-size) geändert wird, werden die Werte einiger \paper-Variablen automatisch an die neue Größe angepasst. Um die automatische Skalierung für eine bestimmte Variable zu umgehen, kann die Variable definiert werden, nachdem man das Papierformat angegeben hat. Es sollte beachtet werden, dass die automatische Anpassung nicht ausgelöst wird, wenn man nur die paper-height oder paper-width-Variablen verändert, obwohl paper-width andere Werte beeinflussen kann (das muss von der automatischen Skalierung unterschieden werden und wird unten behandelt). Die Funktionen set-default-paper-size und set-paper-size werden behandelt in Das Papierformat einstellen.

Die vertikalen Dimensionen, die durch die automatische Skalierung verändert werden sind: top-margin und bottom-margin (siehe Vertikale \paper-Variablen mit festen Abständen). Die horizontalen Dimensionen, die durch die automatische Skalierung verändert werden, sind left-margin, right-margin, inner-margin, outer-margin, binding-offset, indent und short-indent (siehe \paper-Variablen für horizontale Abstände).

Die Standardwerte für diese Dimensionen sind in ‘ly/paper-defaults-init.ly’ definiert, wobei interne Variablen mit den Bezeichnungen top-margin-default, bottom-margin-default, usw. benutzt werden. Das sind die Werte für die Standardpapiergröße a4. Zum Vergleich: a4 hat Werte von 297\mm für paper-height und 210\mm für paper-width.

Siehe auch

Notationsreferenz: Vertikale \paper-Variablen mit festen Abständen, \paper-Variablen für horizontale Abstände.

Installierte Dateien: ‘ly/paper-defaults-init.ly’, ‘scm/paper.scm’.


Vertikale \paper-Variablen mit festen Abständen

Achtung: Einige \paper-Dimensionen werden automatisch nach Papierformat skaliert, was zu ungewolltem Verhalten führen kann. Siehe Automatische Skalierung auf ein Papierformat.

Standardwerte (vor der Skalierung) sind definiert in ‘ly/paper-defaults-init.ly’.

paper-height

Die Höhe der Seite, standardmäßig nicht definiert. Die automatische Skalierung einiger vertikalen Dimensionen wird hiervon nicht betroffen.

top-margin

Der Rand zwischen dem oberen Ende der Seite und dem oberen Ende des bedruckbaren Bereichs. Wenn das Papierformat verändert wurde, wird der Standardwert dieser Dimension entsprechend skaliert.

bottom-margin

Der Rand zwischen dem unteren Ende der Seite und dem unteren Ende des bedruckbaren Bereichs. Wenn das Papierformat verändert wurde, wird der Standardwert dieser Dimension entsprechend skaliert.

ragged-bottom

Wenn auf wahr gesetzt, werden die Systeme nicht vertikal bis zum unteren Seitenrand verteilt. Sollte auf wahr gesetzt sein für Stücke, die nur ein bis zwei Notensystemgruppen pro Seite haben, etwa Orchesterpartituren.

ragged-last-bottom

Wenn auf falsch gesetzt, werden die Systeme vertikal auf der letzten Seite verteilt. Bei Stücken, die grob zwei oder mehr Seiten füllen, sollten es auf falsch (false) gesetzt werden. Hiermit wird auch die letzte Seite von Teilen eines \book, die mit \bookpart erstellt sind, beeinflusst.

Siehe auch

Notationsreferenz: Automatische Skalierung auf ein Papierformat.

Installierte Dateien: ‘ly/paper-defaults-init.ly’.

Schnipsel: Spacing.

Bekannte Probleme und Warnungen

Die Titel (aus der \header-Umgebung) werden als Systemgruppe behandelt, sodass ragged-bottom und ragged-last-bottom auch zusätzlichen Abstand zwischen den Titel und dem ersten System einer Paritur einfügt.

Explizit definierte Papierformate überschreiben alle vom Benutzer erstellte Randeinstellung für die Ränder oben und unten.


Vertikale \paper-Variablen mit flexiblen Abständen

In den meisten Fällen bietet es sich an, dass die vertikalen Abstände zwischen bestimmten Objekten (wie Ränder, Titel, Notensystemgruppen und einzelne Partituren) flexibel gehalten werden, sodass sie je nach Situation gedehnt oder komprimiert werden können. Es gibt eine Anzahl von Variablen für die \paper-Umgebung, mit denen man das Dehnungsverhalten dieser Dimensionen beeinflussen kann. Sie finden sich unten aufgelistet.

Dabei sollte beachtet werden, dass die Variablen, die in diesem Abschnitt behandelt werden, nicht die Platzierung und das Dehnungsverhalten von Notensystemen innerhalb der einzelnen Systemgruppen behandelt. Die Dehnung zwischen Notensystemen wird mit Grob-Eigenschaften kontrolliert, deren Einstellungen normalerweise innerhalb der \score-Umgebung vorgenommen werden, und nicht innerhalb der \paper-Umgebung. Siehe auch Flexible vertikale Abstände in Systemgruppen.


Struktur der Alisten für flexible vertikale Abstände

Jede der flexiblen vertikalen Abstandsvariablen ist eine Aliste (eine assoziative Liste), die vier Schlüssel (engl. key) enthält:

Wenn eine Seite einen nicht ausgeglichenen unteren Rand hat, ist der resultierende Abstand der größte von:

Bei Partituren über mehrere Seiten mit nicht ausgeglichenem unteren Rand greift die letzte Seite auf die gleiche Positionierung zurück wie die vorhergehende Seite, vorausgesetzt, dafür ist genügend Platz vorhanden.

Spezifische Methoden, um Alisten zu verändern, werden behandelt in Alisten verändern. Das folgende Beispiel demonstriert beide Arten, wie diese Alisten verändert werden können. Der erste Aufruf verändert nur einen Schlüsselwert einzeln, während der zweite die Variable vollständig neu definiert:

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

Liste der flexiblen vertikalen Abstandsvariablen in \paper

Die Bezeichnungen dieser Variablen entsprechen dem Format obere-untere-platzierung, wobei obere und untere die zu platzierenden Elemente darstellen. Jeder Abstand wird zwischen den Referenzpunkten der beiden Elemente gemessen (siehe Beschreibung der Alistenstruktur oben). In diesen Variablenbezeichnungen bedeutet ‚markup‘ (Beschriftung) sowohl Titelbeschriftungen (bookTitleMarkup oder scoreTitleMarkup) als auch Beschriftungen auf höchster Ebene (siehe Die Dateistruktur). Alle Entfernungen werden in Systemzwischenräumen gemessen.

Standardwerte sind in ‘ly/paper-defaults-init.ly’ definiert.

markup-system-spacing

der Abstand zwischen einer (Titel-)Beschriftung (auf höchster Ebene) und der darauf folgenden Systemgruppe.

score-markup-spacing

der Abstand zwischen dem letzten System einer Partitur und der darauf folgenden (Titel-)Beschriftung (auf höchster Ebene).

score-system-spacing

der Abstand zwischen dem letzten System einer Partitur und dem ersten System der folgenden Partitur, wenn keine (Titel-)Beschriftung (auf höchster Ebene) dazwischen vorkommt.

system-system-spacing

der Abstand zwischen zwei Systemgruppen der selben Partitur.

markup-markup-spacing

der Abstand zwischen zwei (Titel-)Beschriftungen (auf höchster Ebene).

last-bottom-spacing

der Abstand vom letzten System oder Beschriftung auf höchster Ebene auf einer Seite zum unteren Rand des bedruckbaren Bereichs (also bis zum Anfang des unteren Randes).

top-system-spacing

der Abstand zwischen dem oberen Rand des bedruckbaren Bereichs (also dem Ende des oberen Rands) und dem ersten System auf der Seite, wenn keine (Titel-)Beschriftung (auf höchster Ebene) dazwischen kommt.

top-markup-spacing

der Abstand vom oberen Rand des bedruckbaren Bereichs (also dem Ende des oberen Randes) zur ersten (Titel-)Beschriftung (auf höchster Ebene) auf einer Seite, wenn keine Systemgruppe dazwischen kommt.

Siehe auch

Notationsreferenz: Flexible vertikale Abstände in Systemgruppen.

Installierte Dateien: ‘ly/paper-defaults-init.ly’.

Schnipsel: Spacing.


\paper-Variablen für horizontale Abstände

Achtung: Einige \paper-Dimensionen werden automatische entsprechend dem Papierformat skaliert und können deshalb ungewollte Resultate haben. Siehe Automatische Skalierung auf ein Papierformat.


\paper-Variablen für Breite und Ränder

Standardwerte (vor der Skalierung), die hier nicht aufgelistet sind, finden sich in ‘ly/paper-defaults-init.ly’.

paper-width

Die Breide der Seite, standardmäßig nicht definiert. Während paper-width keine Auswirkungen auf die automatische Skalierung einiger horizontaler Dimensionen hat, beeinflusst es dennoch die line-width-Variable. Wenn sowohl paper-width als auch line-width definiert sind, dann werden auch left-margin und right-margin aktualisiert. Siehe auch check-consistency.

line-width

Die horizontale Ausdehnung der Notenlinien in nicht-eingerückten, Systemen mit Ausgleich zum rechten Rand, entspricht (paper-width - left-margin - right-margin) wenn nicht definiert. Wenn line-width definiert ist und sowohl left-margin als auch right-margin nicht definiert sind, dann werden die Ränder aktualisiert, sodass die Systeme mittig auf der Seite zentriert werden. Siehe auch check-consistency. Diese Variable kann auch in der \layout-Umgebung definiert werden.

left-margin

Der Rand zwischen der linken Papierkante und dem Beginn der Systeme ohne Einrückungen. Wenn das Papierformat verändert wird, wird auch der Standardwert dieser Dimension entsprechend skaliert. Wenn left-margin nicht definiert ist und sowohl line-width als auch right-margin definiert sind, dann wird left-margin auf den Wert (paper-width - line-width - right-margin) gesetzt. Wenn nur line-width definiert ist, dann werden beide Ränder auf den Wert ((paper-width - line-width) / 2) gesetzt und die Systeme demzufolge auf der Seite zentriert. Siehe auch check-consistency.

right-margin

Der Rand zwischen der rechten Papierkante und dem Ende der Systeme mit Randausgleich („Blocksatz“). Wenn das Papierformat geändert wird, wird auch der Standardwert dieser Dimension entsprechend skaliert. Wenn right-margin nicht definiert ist und sowohl line-width als auch left-margin definiert sind, dann wird right-margin auf den Wert (paper-width - line-width - left-margin) gesetzt. Wenn nur line-width definiert ist, dann werden beide Ränder auf den Wert ((paper-width - line-width) / 2) gesetzt und die Systeme demzufolge auf der Seite zentriert. Siehe auch check-consistency.

check-consistency

Wenn wahr, wird eine Warnung ausgegeben, sollten left-margin, line-width und right-margin zusammen nicht exakt den Wert von paper-width ergeben, und die Werte (außer paper-width) mit ihren Standardwerten belegt (wenn nötig auf das entsprechende Papierformat skaliert). Wenn falsch werden derartige Inkonsistenzen ignoriert und die Systeme dürfen auch über den Seitenrand hinausragen.

ragged-right

Wenn wahr, werden Notensysteme nicht über die gesamte Zeilenbreite gestreckt, sondern sie enden horizontal entsprechend den enthaltenen Noten. Standard: #t (wahr) für Partituren mit einem System und #f (falsch) für Partituren mit zwei oder mehr Systemen. Diese Variable kann auch in der \layout-Umgebung definiert werden.

ragged-last

Wenn wahr, wird das letzte Notensystem einer Partitur nicht über die gesamte Zeilenbreite gestreckt, sondern es endet horizontal entsprechend den enthaltenen Noten. Standard: #f (falsch). Diese Variable kann auch in der \layout-Umgebung definiert werden.

Siehe auch

Notationsreferenz: Automatische Skalierung auf ein Papierformat.

Installierte Dateien: ‘ly/paper-defaults-init.ly’.

Bekannte Probleme und Warnungen

Explizit definierte Papierformate überschreiben alle vom Benutzer erstellte Randeinstellung für die Ränder oben und unten.


\paper-Variablen für zweiseitigen Satz

Standardwerte (vor der Skalierung) sind definiert in ‘ly/paper-defaults-init.ly’.

two-sided

Wenn auf wahr (##t) gesetzt, werden inner-margin, outer-margin und binding-offset zusammen benutzt, um die Ränder der Seite in Abhängigkeit von einer geraden oder ungeraden Seitennummer zu errechnen. Damit werden die Werte von left-margin und right-margin überschrieben. Standard: ##f.

inner-margin

Der Rand, den alle Seiten auf der Innenseite haben, wenn sie Teil eines Buches (\book) sind. Wenn das Papierformat verändert wird, wird der Standardwert dieser Dimension entsprechend skaliert. Funktioniert nur, wenn two-sided wahr ist.

outer-margin

Der Rand, den alle Seiten auf der Außenseite haben, wenn sie Teil eines Buches sind. Wenn das Papierformat verändert wird, wird der Standardwert dieser Dimension entsprechend skaliert. Funktioniert nur, wenn two-sided wahr ist.

binding-offset

Der Wert, um welchen inner-margin erhöht wird, um sicherzugehen, dass nichts in der Bindung verschwindet. Wenn das Papierformat verändert wird, wird der Standardwert dieser Dimension entsprechend skaliert. Funktioniert nur, wenn two-sided wahr ist.

Siehe auch

Notationsreferenz: Automatische Skalierung auf ein Papierformat.

Installierte Dateien: ‘ly/paper-defaults-init.ly’.


\paper-Variablen für Verschiebungen und Einrückungen

Standardwerte (vor der Skalierung), die hier nicht aufgeführt sind, sind definiert in ‘ly/paper-defaults-init.ly’.

horizontal-shift

Der Wert, um den alle Systeme (und auch Überschriften und Systemtrenner) nach rechts verschoben werden. Standard: 0.0\mm.

indent

Der Einzug für das erste System einer Partitur. Wenn das Papierformat verändert wird, wird der Standardwert dieser Dimension entsprechend skaliert. Diese Variable kann auch in der \layout-Umgebung definiert werden.

short-indent

Der Einzug für alle Systeme einer Partitur ausschließlich das erste System. Wenn das Papierformat verändert wird, wird der Standardwert dieser Dimension entsprechend skaliert. Diese Variable kann auch in der \layout-Umgebung definiert werden.

Siehe auch

Notationsreferenz: Automatische Skalierung auf ein Papierformat.

Installierte Dateien: ‘ly/paper-defaults-init.ly’.

Schnipsel: Spacing.


Andere Sprachen: English, español, français, italiano, 日本語.
About automatic language selection.

LilyPond – Notationsreferenz