2015-09-25 12:28 GMT+02:00 Malte Meyn <lilyp...@maltemeyn.de>: > > > Am 25.09.2015 um 10:58 schrieb Urs Liska: >> >> { >> \override TextScript.self-alignment-X = #LEFT >> c'2 ^\markup \rotate #90 "This is a long markup" c >> } >> > > You could use an event function: > > %%%%% > \version "2.19.27" > > verticalText = > #(define-event-function (text) (markup?) > #{ > -\tweak TextScript.self-alignment-X #LEFT > -\markup \rotate #90 #text > #}) > > { > c'2^\verticalText \markup \italic "This is a long markup" c > c'2\verticalText "This is a long text" c > } > %%%%%
Using \override or \tweak or an event-function will not work for markups at toplevel and/or if not the entire markup is rotated, see: \markup { "ab" \rotate #90 "------|------" "xy" } Hence I wrote 'my-rotate': #(define-markup-command (my-rotate layout props ang arg) (number? markup?) (let* ((stil (interpret-markup layout props arg)) (stil-x-length (interval-length (ly:stencil-extent stil X))) (stil-y-length (interval-length (ly:stencil-extent stil Y)))) (ly:stencil-rotate stil ang (/ stil-y-length -2) (/ stil-x-length -2)))) \markup { "ab" \my-rotate #90 "------|------" "xy" } Not sure if I should add some padding at top and bottom to respect baseline-skip. For now I refused to do so, at least it's consistent to other commands, see: \markup { \wordwrap { Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore \draw-line #'(0 . 5) \my-rotate #90 magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. } } HTH, Harm [off-topic] I would have loved to check the output with adobe acrobat reader, because of it's high resolution (was up to 6400%). Though, it's not longer available for Linux. For now I used qpdfview (up to 1000%) Are there Linux-pdfviewer with higher resolution available? _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user