4.4.3 Explizite Positionierung von Systemen
Man kann die Einstellungen des VerticalAxisGroup
-Objekts
und der \paper
-Umgebung, wie sie im vorigen Abschnitt
erklärt wurden, als eine Sammlung verschiedenerer Einstellmöglichkeiten
verstehen, die vor allem die Größe des vertikalen Platzes zwischen
Notensystemen und Gruppen auf der Seite kontrollieren.
Die vertikale Platzverteilung kann aber auch auf andere Weise
eingestellt werden: mit den Optionen von
NonMusicalPaperColumn #'line-break-system-details
. Während
Einstellungen in VerticalAxisGroup
und \paper
Füllplatz
definieren, werden mit
NonMusicalPaperColumn #'line-break-system-details
absolute vertikale
Positionen auf der Seite festgelegt.
NonMusicalPaperColumn #'line-break-system-details
akzeptiert eine
Liste aus fünf unterschiedlichen Einstellungen:
-
X-offset
-
Y-offset
-
alignment-offsets
-
alignment-extra-space
-
fixed-alignment-extra-space
Veränderungen von Grobs (wozu auch NonMusicalPaperColumn
gehört),
können an drei unterschiedlichen Stellen in der Quelldatei vorgenommen
werde:
- mitten im Notentext
- in einer
\context
-Umgebung - in einer
\with
-Umgebung
Wenn der Grob NonMusicalPaperColumn
verändert werden soll,
wird der \override
-Befehl in der \context
oder
\with
-Umgebung eingesetzt. Wenn die Veränderungen aber
mitten im Notentext stattfinden sollen, müssen Sie den Befehl
\overrideProperty
einsetzen. Einige Beispiele für eine
Veränderungen von NonMusicalPaperColumn
mit dem
\overrideProperty
-Befehl sind hier aufgelistet:
\overrideProperty NonMusicalPaperColumn #'line-break-system-details #'((X-offset . 20)) \overrideProperty NonMusicalPaperColumn #'line-break-system-details #'((Y-offset . 40)) \overrideProperty NonMusicalPaperColumn #'line-break-system-details #'((X-offset . 20) (Y-offset . 40)) \overrideProperty NonMusicalPaperColumn #'line-break-system-details #'((alignment-offsets . (0 -15))) \overrideProperty NonMusicalPaperColumn #'line-break-system-details #'((X-offset . 20) (Y-offset . 40) (alignment-offsets . (0 -15)))
Um zu verstehen, wie jede dieser unterschiedlichen Einstellungen
funktioniert, wollen wir uns ein Beispiel vornehmen, dass überhaupt
keine Einstellungen (d.h. override
-Befehle) enthält:
Diese Partitur nimmt Zeilen- und Seitenumbruchinformationen in einer eigenen Stimme vor. Mit dieser Methode kann die Layout-Information einfach von den Noten getrennt werden, was sehr hilfreich ist, wenn das Beispiel komplizierter wird. Siehe auch Eine zusätzliche Stimme für Umbrüche benutzen.
Ausdrückliche \break
-Befehle teilen die Noten in sechs Takte
lange Zeilen. Die vertikale Platzverteilung wird von LilyPond
errechnet. Um den vertikalen Beginn einer jeden Systemgruppe
genau anzugeben, kann Y-offset
in der
line-break-system-details
-Eigenschaft des
NonMusicalPaperColumn
-Grobs wie in dem Beispiel
ersichtlich benutzt werden:
In der line-break-system-details
-Eigenschaft kann eine Liste
mit vielen Einstellungen eingegeben werden, aber hier wird nur eine
Einstellung angegeben. Die Y-offset
-Eigenschaft bestimmt
hier die exakte vertikale Position auf der Seite, an welcher jede
neue Systemgruppe begonnen wird.
Da jetzt der exakte Beginn eines jeden Systems explizit festgelegt wurde,
können wir auch den exakten Beginn eines jeden Notensystems in der
Gruppe festlegen. Dies geschieht mit der alignment-offsets
-Eigenschaft
von line-break-system-details
.
Dem line-break-system-details
-Attribut des
NonMusicalPaperColumn
-Grobs werden zwei Eigenschaften
zugewiesen. Auch wenn die Liste (alist) von
line-break-system-details
sehr viel mehr Platzierungsparameter
akzeptiert, müssen hier nu die Parameter Y-offset
und
alignment-offsets
gesetzt werden, um den vertikalen Beginn
jedes Systems und jeder Systemgruppe zu kontrollieren. Y-offset
bestimmt also die vertikale Position von Systemgruppen und alignment-offsets
die vertikale Position von einzelnen Notensystemen.
Einige Dinge sollten beachtet werden:
- Wenn
alignment-offsets
benutzt wird, werden Gesangtextzeilen als ein System gezählt. - Die Einheiten der Zahlen, die für
X-offset
,Y-offset
undalignment-offsets
benutzt werden, werden als Vielfaches des Abstandes zwischen zwei Notenlinien gewertet. Positive Werte verschieben Systeme und Gesangstext nach oben, negative Werte nach unten. - Weil die Einstellungen von
NonMusicalPaperColumn #'line-break-system-details
es möglich machen, Notensysteme und Gruppen an beliebigen Stellen auf der Seite zu platzieren, kann man damit auch Ränder überschreiben oder sogar Notensysteme übereinander platzieren. Sinnvolle Werte für diese Parameter werden derartiges Verhalten vermeiden.
Siehe auch
Schnipsel: Spacing.