| [ << Interfaces for programmers ] | [Top][Contents][Index] | [ LilyPond Scheme interfaces >> ] |
| [ < Markup construction in Scheme ] | [ Up : Markup functions ] | [ New markup command definition > ] |
2.5.2 How markups work internally
In a markup like
\raise #0.5 "text example"
\raise is actually represented by the raise-markup
function. The markup expression is stored as
(list raise-markup 0.5 (list simple-markup "text example"))
When the markup is converted to printable objects (Stencils), the
raise-markup function is called as
(apply raise-markup
\layout object
list of property alists
0.5
the "text example" markup)
The raise-markup function first creates the stencil for the
text example string, and then it raises that Stencil by 0.5
staff space. This is a rather simple example; more complex examples
are in the rest
of this section, and in ‘scm/define-markup-commands.scm’.
| [ << Interfaces for programmers ] | [Top][Contents][Index] | [ LilyPond Scheme interfaces >> ] |
| [ < Markup construction in Scheme ] | [ Up : Markup functions ] | [ New markup command definition > ] |