[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Lilypond-auto] Issue 3669 in lilypond: vertical spacing messed up w
From: |
lilypond |
Subject: |
Re: [Lilypond-auto] Issue 3669 in lilypond: vertical spacing messed up when trying to access the grob stencil for a cross-staff glissando |
Date: |
Fri, 22 Nov 2013 05:47:17 +0000 |
Updates:
Labels: -Type-Ugly Type-Enhancement Needs-design
Comment #1 on issue 3669 by address@hidden: vertical spacing messed up
when trying to access the grob stencil for a cross-staff glissando
http://code.google.com/p/lilypond/issues/detail?id=3669
Internals Reference 3.2.45 says:
"The properties after-line-breaking and before-line-breaking are dummies
that are not user-serviceable."
On the other hand, Notation Reference 2.9 says:
"The after-line-breaking callback contains the Scheme procedure that is
called after the line breaks have been determined and layout objects have
been split over different systems."
and proceeds to change a setting of the grob (and then call the default
procedure, if one was used for that type of grob).
At this point in time, immediately after line-breaking,
you can change the settings the LilyPond uses to draw or position the
graphical object,
but the object would not normally have its stencil drawn at this time.
The cross-staff-glissando normally waits until later, after staves are
spread on the page, to create its stencil. It seems that calling the
stencil-drawing function early causes LilyPond to space staves too early,
which seems to cause other things go to be done wrongly because the second
staff overlaps the markup that was intended to go below.
It is unlikely that LilyPond will be able to support requests to generate
stencils of lines that join staves at arbitrary times in processing.
Marked needs-design to get another opinion on whether there is a feasible
design. If not, it should be Invalid.
(Looking at the email thread, the desire was to take LilyPond's stencil and
modify it at the PostScript level. In that case, you do not want to do the
action immediately after-line-breaking. A Scheme programmer can probably
override the 'stencil command itself with a wrapper function. Then
LilyPond will call the wrapper when it is ready to draw the Glissando, you
can first call the default ly:line-spanner::print, modify what it returns,
and return the modified stencil to be printed.)
--
You received this message because this project is configured to send all
issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings