When rotating markups they are by default rotated by their center,
seemingly resulting in a horizontal shift (by half their width):

{
  c'2 ^\markup \rotate #90 "This is a long markup" c
}

This can be handled by overriding the self-alignment-X property:

{
  \override TextScript.self-alignment-X = #LEFT
  c'2 ^\markup \rotate #90 "This is a long markup" c
}

Now I want to pack this rotated text in a markup function and wrote this:

#(define-markup-command (verticalText layout props text)(markup?)
   (interpret-markup layout props
   #{ \markup \rotate #90 #text #}))

{
  c'2 ^\markup \verticalText "This is a long markup"
}

which brings me to the original result of the shifted markup.

I don't seem to find a way how to incorporate the override into a markup
command. Any help would be much appreciated.

Thanks
Urs

_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to