• Willkommen im Forum „Archiviertes Lilypond Forum (2017)“.
 

Dies ist das Archiv des alten Forums (bis März 2017). Das aktuelle Forum ist unter lilypondforum.de zu finden.
This is the archive of the old forum (until March 2017). You can find the current forum at lilypondforum.de.

Hauptmenü

Vertikaler Abstand mehrzeilige Lyrics

Begonnen von Mario, Dienstag, 20. Oktober 2009, 15:05

Vorheriges Thema - Nächstes Thema

Mario

Hallo,

ich erzeuge Noten mit Lyrics nach folgendem Schema

Zitatnotes = \relative c' { \time 4/4 c d e f }

erstezeile = \lyricmode { "1" "2" "3" "1" }
zweitezeile = \lyricmode { "4" "5" "6" "4" }

\score {
<<
\new Staff << \new Voice ="mainvoice" << \notes >> >>
\new Lyrics = "erstezeile" \with { \override LyricText #'font-size = #-2 }
\new Lyrics = "zweitezeile" \with { \override LyricText #'font-size = #-2 }

\context Lyrics = "erstezeile" \lyricsto "mainvoice" \erstezeile
\context Lyrics = "zweitezeile" \lyricsto "mainvoice" \zweitezeile
>>

}

Die beiden Zeilen sind mir aber zu weit voneinander entfernt. Gibt es eine Möglichkeit, diese per \override o.ä. enger zusammenrücken zu lassen?

ding-dong

das scheint in bearbeitung zu sein und wird wohl im nächsten entwickluns-release zu finden sein:
http://www.nabble.com/vertical-spacing-problems-with-Lyrics-to25770257.html#a25860732
hdh

Mario

Hmm, o.k.

Ich habe es nun mit
Zitat\overrideProperty #"Score.NonMusicalPaperColumn"
#'line-break-system-details #'((alignment-offsets . (11 4 2 -2)))
hinbekommen, aber die Lösung ist nicht sehr elegant. Egal.

Zitatnotes = \relative c' { \time 4/4 <c c'>4 <g' g'> <d d'> <b' a'> \bar "||" }

lyricsNummern = \lyricmode { "1" "3" "1" "3" }
lyricsNummernSplit = \lyricmode { "4" "6" "4" "6" }

tabs = \lyricmode {
     \markup { \fontsize #4 \override #'(font-name . "TabSymbols") { a } }
     \markup { \fontsize #4 \override #'(font-name . "TabSymbols") { a } }
     \markup { \fontsize #4 \override #'(font-name . "TabSymbols") { b } }
     \markup { \fontsize #4 \override #'(font-name . "TabSymbols") { b } }
}

\score {
<<
\new Staff << \new Voice ="mainvoice" <<
\overrideProperty #"Score.NonMusicalPaperColumn"
#'line-break-system-details #'((alignment-offsets . (11 4 2 -2)))
\notes >> >>
\new Lyrics = "nummern" \with { \override LyricText #'font-size = #-2 }
\new Lyrics = "nummern2" \with { \override LyricText #'font-size = #-2 }
\new Lyrics = "tabs" {}

\context Lyrics = "nummern" \lyricsto "mainvoice" \lyricsNummern
\context Lyrics = "nummern2" \lyricsto "mainvoice" \lyricsNummernSplit
\context Lyrics = "tabs" \lyricsto "mainvoice" \tabs
>>

}

RobUr

Andere Möglichkeit: Y-extent und Y-offset einer der beiden (Text-)Zeilen überschreiben.

zweitezeile = \lyricmode {
\override LyricText #'Y-extent = #'( 0 . 0 )
\override LyricText #'Y-offset = #'1.5
\override LyricHyphen #'Y-extent = #'( 0 . 0 )
\override LyricHyphen #'Y-offset = #'1.5
"4" -- "5" "6" "4"
}


Zuerst die vertikale Ausdehnung auf 0 setzen, dann per Y-offset verschieben. Falls Strophennummern verwendet werden, diese ebenfalls per \override StanzaNumber adressieren und überschreiben.

Grüße, Robert

Mario