lilypond-auto
[Top][All Lists]
Advanced

[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



reply via email to

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