@end lilypond
@item
-A new style of whiteout that approximates the contours of a glyph's
-outline is now available using @code{whiteout-style}. The shape of the
-white background is produced from multiple displaced copies of the
-glyph. The @code{thickness} of both the new @code{outline} style and
-the default @code{box} style, as a multiple of staff-line thickness, can
-be customized.
+Two new styles of whiteout are now available. The @code{outline} style
+approximates the contours of a glyph's outline, and its shape is
+produced from multiple displaced copies of the glyph. The
+@code{rounded-box} style produces a rounded rectangle shape. For all
+three styles, including the default @code{box} style, the whiteout
+shape's @code{thickness}, as a multiple of staff-line thickness, can be
+customized.
+
@lilypond[verbatim,quote]
\markup {
\combine
\filled-box #'(-1 . 15) #'(-3 . 4) #1
- \override #'(thickness . 2)
+ \override #'(thickness . 3)
\whiteout whiteout-box
}
+\markup {
+ \combine
+ \filled-box #'(-1 . 24) #'(-3 . 4) #1
+ \override #'(style . rounded-box)
+ \override #'(thickness . 3)
+ \whiteout whiteout-rounded-box
+}
\markup {
\combine
\filled-box #'(-1 . 18) #'(-3 . 4) #1
\relative {
\time 3/4
- \override Staff.StaffSymbol.layer = #4
- \once \override Tie.layer = #2
+ \override Staff.StaffSymbol.layer = 4
+ \once \override Tie.layer = 2
b'2.~
\once \override Staff.TimeSignature.whiteout = ##t
- \once \override Staff.TimeSignature.layer = #3
+ \once \override Staff.TimeSignature.layer = 3
\time 5/4
b4
}
\relative c' {
\time 3/4
- \override Staff.StaffSymbol.layer = #4
- \once \override Tie.layer = #2
+ \override Staff.StaffSymbol.layer = 4
+ \once \override Tie.layer = 2
+ b'2.~
+ \once \override Staff.TimeSignature.whiteout-style = #'rounded-box
+ \once \override Staff.TimeSignature.whiteout = 3
+ \once \override Staff.TimeSignature.layer = 3
+ \time 5/4
+ b4
+}
+
+\relative c' {
+ \time 3/4
+ \override Staff.StaffSymbol.layer = 4
+ \once \override Tie.layer = 2
b'2.~
\once \override Staff.TimeSignature.whiteout-style = #'outline
- \once \override Staff.TimeSignature.whiteout = #3
- \once \override Staff.TimeSignature.layer = #3
+ \once \override Staff.TimeSignature.whiteout = 3
+ \once \override Staff.TimeSignature.layer = 3
\time 5/4
b4
}
texidoc = "The whiteout command underlays a white background under a
markup. The shape is determined by @code{whiteout-style}. The default
-is @code{box} which produces a white rectangle. @code{outline}
-approximates the outline of the markup."
+is @code{box} which produces a rectangle. @code{rounded-box} produces
+a rounded rectangle. @code{outline} approximates the outline of the
+markup."
}
\version "2.19.32"
c
c-\markup {
\override #'(thickness . 3)
- \override #'(whiteout-style . outline)
+ \override #'(style . rounded-box)
+ \whiteout foo
+ }
+ c
+ c-\markup {
+ \override #'(thickness . 3)
+ \override #'(style . outline)
\whiteout foo
}
c
staff-line thickness. The shape of the background is determined by
@code{whiteout-style}. Usually @code{#f} by default.")
(whiteout-style ,symbol? "Determines the shape of the
-@code{whiteout} background. Available are @code{'outline} and the
-default @code{'box}.")
+@code{whiteout} background. Available are @code{'outline},
+@code{'rounded-box}, and the default @code{'box}.")
(width ,ly:dimension? "The width of a grob measured in staff
space.")
(word-space ,ly:dimension? "Space to insert between words in
Provide a white background for @var{arg}. The shape of the white
background is determined by @code{style}. The default
-is @code{box} which produces a white rectangle. @code{outline}
-approximates the outline of the markup.
+is @code{box} which produces a rectangle. @code{rounded-box}
+produces a rounded rectangle. @code{outline} approximates the
+outline of the markup.
@lilypond[verbatim,quote]
\\markup {
\\override #'(thickness . 1.5)
\\whiteout whiteout-box
}
+\\markup {
+ \\combine
+ \\filled-box #'(-1 . 24) #'(-3 . 4) #1
+ \\override #'(style . rounded-box)
+ \\override #'(thickness . 3)
+ \\whiteout whiteout-rounded-box
+}
\\markup {
\\combine
\\filled-box #'(-1 . 18) #'(-3 . 4) #1
(let ((thick (* line-thickness
(if (number? thickness)
thickness
- (if (eq? style 'outline) 3 0)))))
- (if (eq? style 'outline)
- (stencil-whiteout-outline stil thick)
- (stencil-whiteout-box stil thick))))
+ (cond
+ ((eq? style 'outline) 3)
+ ((eq? style 'rounded-box) 3)
+ (else 0))))))
+ (cond
+ ((eq? style 'outline) (stencil-whiteout-outline stil thick))
+ ((eq? style 'rounded-box) (stencil-whiteout-box stil thick (* 2 thick)))
+ (else (stencil-whiteout-box stil thick)))))
(define-public (arrow-stencil-maker start? end?)
"Return a function drawing a line from current point to @code{destination},