5.3.3 Länge und Dicke von Objekten

Abstände und Längen werden in LilyPond üblicherweise in Notenlinienabständen (engl. staff-spaces) gemessen. Das ist der Abstand zwischen zwei Notenlinien im System. Die meisten Dicken (engl. thickness) dagegen werden in einer internen Einheit Linien-Dicke (engl. line-thickness) gemessen. Die Linien von Dynamikklammern zum Beispiel haben standardmäßig eine Dicke von einer Einheit line-thickness, während die Dicke eines Notenhalses 1,3 ist. Beachten Sie jedoch, dass sich manche Dicken anders verhalten: die Dicke von Balken etwa wird in Notenlinienabständen gemessen.

Wie also werden Längen skaliert um der Schriftgröße zu entsprechen? Das kann mit einer besonderen Funktion magstep vorgenommen werden, die genau für diesen Zweck vorhanden ist. Sie nimmt ein Argument auf, die Änderung der Schriftgröße (#-2 im obigen Beispiel) und gibt einen Skalierungsfaktor aus, der dazu dient, Objekte proportional zueinander zu verändern. So wird sie benutzt:

\new Staff ="main" {
  \relative {
    r4 g'8 g c4 c8 d |
    e4 r8
    <<
      { f8 c c }
      \new Staff \with {
        alignAboveContext = "main"
        \omit Clef
        \omit TimeSignature
        fontSize = #-2
        % Reduziere Halslängen und Notenlinienabstände in gleicher Weise
        \override StaffSymbol.staff-space = #(magstep -2)
      }
      { f8 f c }
    >>
    r4 |
  }
}

[image of music]

Da die Länge eines Halses und viele andere Längeneigenschaften relativ zum Wert des Notenlinienabstands (staff-space) errechnet werden, werden sie auch automatisch verkleinert. Das wirkt sich jedoch nur auf die vertikale Skalierung des Ossias aus – die horizontale Skala ist durch das Layout des Haupsystems bestimmt und wird also von diesen Größenänderungen nicht betroffen. Wenn natürlich die Größe der gesamten Noten reduziert würde, würde sich auch die horizontalen Abstände ändern. Dass wird später im Layout-Abschnitt betrachtet.

Mit dieser Änderung ist unser Ossia fertig. Die Größen und Längen aller anderen Objekte können auf analoge Weise geändert werden.

Für kleine Größenänderungen, wie in dem obigen Beispiel, braucht die Dicke der verschiedenen Linien, wie Taktstriche, Notenlinien, Balken, Dynamikklammern usw. normalerweise keine spezielle Anpassung. Wenn die Dicke eines bestimmten Layout-Objektes angepasst werden muss, kann man das erreichen, indem die entsprechende thickness-Eigenschaft des Objekts mit \override verändert wird. Ein Beispiel, wie man die Dicke von Bögen ändert, wurde schon gezeigt, siehe Eigenschaften von Layoutobjekten. Die Dicke aller gezeichneten Objekte (die also nicht aus einer Schriftart stammen) können auf gleiche Weise geändert werden.


LilyPond – Learning Manual v2.23.82 (Entwicklungszweig).