2016-01-13 16:17 GMT+01:00 Paul Morris <p...@paulwmorris.com>:
>> On Jan 12, 2016, at 6:09 PM, Thomas Morley <thomasmorle...@gmail.com> wrote:
>>
>> Though, there might be a bug in `stencil-whiteout-outline', Paul cc-ed.
>>
>> Look at:
>>
>> \markup \stencil
>> #(stencil-whiteout-outline
>>  (make-filled-box-stencil '(-1 . 1) '(-1 . 1))
>>  0.5
>>  red
>>  16
>>  1)
>>
>> \markup \stencil
>> #(stencil-whiteout-outline
>>  (stencil-with-color (make-filled-box-stencil '(-1 . 1) '(-1 . 1)) green)
>>  0.5
>>  red
>>  16
>>  1)
>>
>> First one is ok.
>> But in the second one the color from the stencil is taken (green) and
>> the specified (red) is ignored.
>> Will investigate more detailed the upcoming days.
>
> Huh, that’s odd…  stencil-whiteout-box works as expected (see below), so the 
> problem must indeed be in stencil-whiteout-outline.
>
> -Paul

Yep.

In this part of the code for stencil-whiteout-outline you try to apply
a color to a stencil, which is derived from the original one,

                (ly:stencil-expr
                 (stencil-with-color
                  (radial-plot thickness stil empty-stencil)
                  color))

Though, if this original stencil is colored already, it will fail.
See:

#(define my-box-stil (make-filled-box-stencil '(-1 . 1) '(-1 . 1)))

\markup {
  \stencil #my-box-stil
  \stencil #(stencil-with-color my-box-stil green)
  \stencil #(stencil-with-color (stencil-with-color my-box-stil green) red)
     }

Thinking about it, I came to the conclusion it's desired behaviour.
Otherwise the following wouldn't work:

\markup \with-color #red { foo \with-color #green bar buzz }

So far the reason, now looking forward to make it work anyway.


Cheers,
  Harm

_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to