[ << Changing defaults ] | [Top][Contents][Index] | [ Notation manual tables >> ] |
[ < Special considerations ] | [ Up : Useful concepts and properties ] | [ Rotating layout objects > ] |
5.4.8 Rotating objects
Both layout objects and elements of markup text can be rotated by any angle about any point, but the method of doing so differs.
Rotating layout objects | ||
Rotating markup |
[ << Changing defaults ] | [Top][Contents][Index] | [ Notation manual tables >> ] |
[ < Rotating objects ] | [ Up : Rotating objects ] | [ Rotating markup > ] |
Rotating layout objects
All layout objects which support the grob-interface
can be
rotated by setting their rotation
property. This takes a
list of three items: the angle of rotation counter-clockwise,
and the x and y coordinates of the point relative to the object’s
reference point about which the rotation is to be performed. The
angle of rotation is specified in degrees and the coordinates in
staff spaces.
The angle of rotation and the coordinates of the rotation point must be determined by trial and error.
There are only a few situations where the rotation of layout objects is useful; the following example shows one situation where they may be:
g4\< e' d'' f''\! \override Hairpin.rotation = #'(15 -1 0) g4\< e' d'' f''\!
[ << Changing defaults ] | [Top][Contents][Index] | [ Notation manual tables >> ] |
[ < Rotating layout objects ] | [ Up : Rotating objects ] | [ Aligning objects > ] |
Rotating markup
All markup text can be rotated to lie at any angle by prefixing it
with the \rotate
command. The command takes two arguments:
the angle of rotation in degrees counter-clockwise and the text to
be rotated. The extents of the text are not rotated: they take
their values from the extremes of the x and y coordinates of the
rotated text. In the following example the
outside-staff-priority
property for text is set to #f
to disable the automatic collision avoidance, which would push some
of the text too high.
\override TextScript.outside-staff-priority = ##f g4^\markup { \rotate #30 "a G" } b^\markup { \rotate #30 "a B" } des'^\markup { \rotate #30 "a D-Flat" } fis'^\markup { \rotate #30 "an F-Sharp" }
[ << Changing defaults ] | [Top][Contents][Index] | [ Notation manual tables >> ] |
[ < Rotating layout objects ] | [ Up : Rotating objects ] | [ Aligning objects > ] |