]> git.donarmstrong.com Git - lilypond.git/blob - input/new/broken-crescendo-hairpin.ly
Move input/new doctitles and update LSR
[lilypond.git] / input / new / broken-crescendo-hairpin.ly
1 \version "2.11.38"
2
3 \header {
4   lsrtags = "expressive-marks"
5   texidoc = "
6 In order to make parts of a crescendo hairpin invisible, the following
7 method is used: A white rectangle is drawn on top of the respective
8 part of the crescendo hairpin, making it invisible. The rectangle is
9 defined as postscript code within a text markup.
10
11 To fine-tune the position and size of the markup, the number
12 preceding @code{setgray} in the postscript definition can be set to a
13 value <1 making it grey. The two numbers before @code{scale} in the
14 postscript code are responsible for the width and height of the
15 rectangle, the two numbers before @code{translate} change the x- and
16 y-origin of the rectangle. 
17
18 Make sure to put the hairpin in a lower layer than the text markup to
19 actually draw the rectangle above the hairpin. 
20 "
21   doctitle = "Broken crescendo hairpin"
22 }
23
24 \score {
25   \relative c' {
26     << {
27       \dynamicUp
28       \override DynamicLineSpanner #'staff-padding = #4
29       r2 r16 c'8.\pp r4
30     } \\ {
31       \override DynamicLineSpanner #'layer = #0
32       des,2\mf\< ~
33       \override TextScript #'layer = #2
34       des16_\markup {
35         \postscript #"1.9 -8 translate 5 4 scale 1 setgray 0 0 moveto 0 1
36         lineto 1 1 lineto 1 0 lineto 0 0 lineto fill"
37       }
38       r8. des4 ~ des16->\sff
39     } >>
40   }
41   \layout { ragged-right = ##t }
42 }