[ << Abstände ] | [Anfang][Inhalt][Index][ ? ] | [ Standardeinstellungen verändern >> ] | ||
[ < Die paper-Umgebung ] | [ Nach oben : Seitenlayout ] | [ Das Papierformat einstellen > ] |
4.1.2 Papierformat und automatische Skalierung
Das Papierformat einstellen | ||
Automatische Skalierung auf ein Papierformat |
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 | ||
Liste der flexiblen vertikalen Abstandsvariablen in \paper |
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:
-
basic-distance
(Grund-Abstand) – der vertikale Abstand, gemessen in Systemzwischenräumen, zwischen den Referenzpunkten zweier Elemente, wenn keine Zusammenstöße vorkommen würden und keine Dehnung oder Kompression stattfindet. Der Referenzpunkt einer (Titel-)Beschriftung (auf höchster Ebene) ist sein höchster Punkt und der Referenzpunkt einer Systemgruppe ist der vertikale Mittelpunkt des nächstenStaffSymbol
– sogar wenn eine Nicht-Notensystemzeile (wie etwa einLyrics
-Kontext) dazwischen kommt. Werte fürbasic-distance
, die weniger als entwederpadding
oderminimum-distance
sind, haben keine Bedeutung, weil der sich daraus ergebende Abstand niemals weniger als entwederpadding
oderminimum-distance
ergibt. -
minimum-distance
(minimaler Abstand) – der kleinste erlaubte vertikale Abstand, gemessen in Systemzwischenräumen, zwischen den Referenzpunkten der zwei Elemente, wenn Kompression stattfindet. Werte fürminimum-distance
, die geringer alspadding
sind, haben keine Bedeutung, weil der sich daraus ergebende Abstand niemals weniger alspadding
ergibt. -
padding
(Verschiebung) – der minimal benötigte vertikale blanke Freiraum zwischen den Bounding-Boxen (oder Skyline) der zwei Objekten, gemessen in Notenlinienabständen. -
stretchability
(Dehnbarkeit) – ein einheitsloses Maß der Leichtigkeit, mit der sich die Dimension dehnen lässt (ohne dass Zusammenstöße auftreten). Wenn es null ist, wird der Abstand nicht gedehnt (außer ein Zusammenstoß würde auftreten), wenn es positiv ist, hängt die Wichtigkeit der Dehnbarkeit eines bestimmten Objekts nur noch von seiner Beziehung zu dem Wert des anderen Objekts ab. Beispielsweise wennn eine Dimension die doppelte Dehnbarkeit als die andere hat, wird sie auch zweimal so einfach gedehnt. Werte sollten nicht-negativ und reale Zahlen sein. Der Wert+inf.0
ruft einenprogramming_error
hervor und wird ignoriert, aber1.0e7
kann für einen so gut wie unendlich dehnbaren Abstand eingesetzt werden. Wenn der Wert nicht gesetzt wird, ist der Standardwert der vonbasic-distance
. Die Wahrscheinlichkeit einer Dimension, sich zu verkleinern, kann man nicht direkt beeinflussen, sondern sie ergibt sich aus (space
-minimum-distance
).
Wenn eine Seite einen nicht ausgeglichenen unteren Rand hat, ist der resultierende Abstand der größte von:
-
basic-distance
, -
minimum-distance
und -
padding
plus der kleinste nötige Abstand, um Zusammenstöße zu vermeiden.
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 | ||
\paper -Variablen für zweiseitigen Satz | ||
\paper -Variablen für Verschiebungen und Einrückungen |
\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 dieline-width
-Variable. Wenn sowohlpaper-width
als auchline-width
definiert sind, dann werden auchleft-margin
undright-margin
aktualisiert. Siehe auchcheck-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. Wennline-width
definiert ist und sowohlleft-margin
als auchright-margin
nicht definiert sind, dann werden die Ränder aktualisiert, sodass die Systeme mittig auf der Seite zentriert werden. Siehe auchcheck-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 sowohlline-width
als auchright-margin
definiert sind, dann wirdleft-margin
auf den Wert(paper-width - line-width - right-margin)
gesetzt. Wenn nurline-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 auchcheck-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 sowohlline-width
als auchleft-margin
definiert sind, dann wirdright-margin
auf den Wert(paper-width - line-width - left-margin)
gesetzt. Wenn nurline-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 auchcheck-consistency
. -
check-consistency
-
Wenn wahr, wird eine Warnung ausgegeben, sollten
left-margin
,line-width
undright-margin
zusammen nicht exakt den Wert vonpaper-width
ergeben, und die Werte (außerpaper-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, werdeninner-margin
,outer-margin
undbinding-offset
zusammen benutzt, um die Ränder der Seite in Abhängigkeit von einer geraden oder ungeraden Seitennummer zu errechnen. Damit werden die Werte vonleft-margin
undright-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, wenntwo-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, wenntwo-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.