lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Background Colour


From: Lukas-Fabian Moser
Subject: Re: Background Colour
Date: Tue, 18 May 2021 16:16:12 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.1

Hi Wim,

Am 18.05.21 um 14:07 schrieb Wim van Dommelen:
Seeing the discussion on coloured lyrics, colour this and that, I realized that for some parts I do change the Background Colour of the clefs maually (using a standard ofice yellow marking (grease) pencil each time after an update print. The purpose is to have a fast recognition point for the eyes to jump to the next line and/or page.

How about:

\version "2.19"

#(define (positive-number? x) (and (number? x) (positive? x)))

markerPen =
#(define-music-function (X-padding Y-padding grob-path) ((positive-number? 0.5) (positive-number? 0) key-list?)
   #{
     \override #grob-path .layer = -1
     \override #grob-path .stencil =
     #(grob-transformer
       'stencil
       (lambda (grob default)
         (let ((X-ext (ly:stencil-extent default X))
               (Y-ext (ly:stencil-extent default Y)))
           (ly:stencil-add
            (ly:make-stencil
             (ly:stencil-expr  (stencil-with-color
                                (ly:round-filled-box
                                 (interval-widen X-ext X-padding)
                                 (interval-widen Y-ext Y-padding)
                                 1)
                                yellow))
             empty-interval empty-interval)
            default))))
   #})

\new Staff \with {
  \markerPen 0.5 Clef
}
\relative {
  c'4 d \markerPen 0.5 0.5 NoteHead es fis
  \once \markerPen Staff.BarLine
  \markerPen NoteHead
  \undo \markerPen NoteHead g a
}

I'm not really happy yet, though, because in some cases the marking affects the spacing. A positive value of Y-padding seems to influence the skylines (e.g. of a clef), so it moves the staves further apart; and for accidentals, the X-padding messes up the spacing completely. Probably I'm changing the stencil too early, it should be changed at a later stage after positioning.

Also, it's not really clean to force the grob and the marking onto the same layer.

Lukas




reply via email to

[Prev in Thread] Current Thread [Next in Thread]