3.2.2 Eigene Kopf- und Fußzeilen sowie Titel


Angepasste Textformatierung für Titelumgebungen

Standard-\markup-Befehle können eingesetzt werden, um jeglichen Text in Titeln, Kopf- und Fußzeilen innerhalb der \header-Umgebung zu verändern.

\score {
  { s1 }
  \header {
    piece = \markup { \fontsize #4 \bold "PRAELUDIUM I" }
    subtitle = \markup { \italic "(Excerpt)" }
  }
}

[image of music]

Siehe auch

Notationsreferenz: Text formatieren.


Angepasstes Layout für Titelumgebungen

\markup-Befehle in der \header-Umgebung sind sinnvoll für einfaches Formatieren von Text, aber sie gewähren keine genaue Kontrolle über die Positionierung von Titeln. Um die Positionierung von Titeltextfeldern vorzunehmen, eignen sich beide oder eine von folgenden Variablen (die man in der \paper-Umgebung einsetzen muss):

Diese Beschriftungsvariablen sind behandelt in Standardlayout von book- und Partitur-Titelumgebungen.

Die Standardeinstellungen von scoreTitleMarkup, wie in der Datei ‘ly/titling-init.ly’ definiert, sind:

scoreTitleMarkup = \markup { \column {
  \on-the-fly #print-all-headers { \bookTitleMarkup \hspace #1 }
  \fill-line {
    \fromproperty #'header:piece
    \fromproperty #'header:opus
  }
}
}

Dadurch werden die Textfelder piece (Stück) und opus an den gegenüberliegenden Enden der gleichen Zeile platziert:

\score {
  { s1 }
  \header {
    piece = "PRAELUDIUM I"
    opus = "BWV 846"
  }
}

[image of music]

Das folgende Beispiel verändert die Einstellungen von scoreTitleMarkup, sodass das Textfeld piece zentriert wird und in fetter, größerer Schrift erscheint.

\book {
  \paper {
    indent = 0\mm
    scoreTitleMarkup = \markup {
      \fill-line {
        \null
        \fontsize #4 \bold \fromproperty #'header:piece
        \fromproperty #'header:opus
      }
    }
  }
  \header { tagline = ##f }
  \score {
    { s1 }
    \header {
      piece = "PRAELUDIUM I"
      opus = "BWV 846"
    }
  }
}

[image of music]

Textfelder, die normalerweise nur im Haupttitel ausgegeben werden, können auch in die Titel einzelner Partituren aufgenommen werden, indem man print-all-headers in die \paper-Umgebung einfügt. Ein Nachteil dieser Methode ist, dass Textfelder, die tatsächlich nur im Haupttitel erscheinen sollen, manuell für jede Partitur unterdrückt werden müssen. Siehe auch Wie funktioniert die Titel-Umgebung?.

Um das zu vermeiden, kann das gewünschte Feld zur Definition von scoreTitleMarkup hinzugefügt werden. Im folgenden Beispiel wird das Komponistenfeld (composer) (normalerweise mit bookTitleMarkup assoziiert) zu scoreTitleMarkup hinzugefügt, sodass jede Partitur einen eigenen Komponisten haben kann.

\book {
  \paper {
    indent = 0\mm
    scoreTitleMarkup = \markup {
      \fill-line {
        \null
        \fontsize #4 \bold \fromproperty #'header:piece
        \fromproperty #'header:composer
      }
    }
  }
  \header { tagline = ##f }
  \score {
    { s1 }
    \header {
      piece = "MENUET"
      composer = "Christian Petzold"
    }
  }
  \score {
    { s1 }
    \header {
      piece = "RONDEAU"
      composer = "François Couperin"
    }
  }
}

[image of music]

Es ist auch möglich, eigene Textfelder zu erstellen und dann auf sie in der Beschriftungsdefinition zu verweisen:

\book {
  \paper {
    indent = 0\mm
    scoreTitleMarkup = \markup {
      \fill-line {
        \null
        \override #`(direction . ,UP) {
          \dir-column {
            \center-align \fontsize #-1 \bold
              \fromproperty #'header:mycustomtext %% User-defined field
            \center-align \fontsize #4 \bold
              \fromproperty #'header:piece
          }
        }
        \fromproperty #'header:opus
      }
    }
  }
  \header { tagline = ##f }
  \score {
    { s1 }
    \header {
      piece = "FUGA I"
      mycustomtext = "A 4 VOCI" %% User-defined field
      opus = "BWV 846"
    }
  }
}

[image of music]

Siehe auch

Notationsreferenz: Wie funktioniert die Titel-Umgebung?.


Angepasstes Layout für Kopf- und Fußzeilen

\markup-Befehle in der \header-Umgebung sind nützlich um einfachen Text zu formatieren, erlauben aber keine Kontrolle über die Positionierung von Kopf- und Fußzeilen. Um die Positionierung der Textfelder zu ändern, eignen sich beide oder eine von folgenden Variablen (die man in der \paper-Umgebung einsetzen muss):

Das folgende Beispiel zentriert die Seitenzahlen unten auf jeder Seite. Zuerst werden die Standardeinstellungen von oddHeaderMarkup und evenHeaderMarkup entfernt, indem sie als „Null“-Beschriftung definiert werden. Dann wird oddFooterMarkup mit zentrierter Seitennummer neu definiert. Schließlich erhält evenFooterMarkup die selbe Layoutdefinition wie \oddFooterMarkup:

\book {
  \paper {
    print-page-number = ##t
    print-first-page-number = ##t
    oddHeaderMarkup = \markup \null
    evenHeaderMarkup = \markup \null
    oddFooterMarkup = \markup {
      \fill-line {
        \on-the-fly #print-page-number-check-first
        \fromproperty #'page:page-number-string
      }
    }
    evenFooterMarkup = \oddFooterMarkup
  }
  \score {
    \new Staff { s1 \break s1 \break s1 }
  }
}

[image of music]

Siehe auch

Notationsreferenz: Wie funktioniert die Titel-Umgebung?, Standardlayout von book- und Partitur-Titelumgebungen.


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

LilyPond – Notationsreferenz