|
From: | Knut Petersen |
Subject: | Whiteout / LyricHyphen |
Date: | Mon, 26 Sep 2016 13:14:53 +0200 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0 |
Hi everybody! Whiteout for LyricHyphen grobs is not needed often, but it's essential if you engrave music that uses mensuration lines. Choosing a *box whiteout function is not an option as for melismata spanning several bars also parts of mensuration lines that do not collide with a hyphen would be destroyed. Choosing the outline whiteout function is not a real option as it is broken if height / width of the object to whiteout is small compared to the area that should be cleared (see first attachment). Increasing the number of iterations (e.g. setting angle-increments to 32 and radial-increments to 3) is easy and it helps (see 2nd attachment), but you'll end up with pdfs that contain mostly whiteout code ;-) Therefore I propose that LyricHyphen grobs should implement their own whiteout routine. That would give the desired result with a minimum of effort (see 3rd and 4th attachment). The necessary changes are small, see 5th attachment ... obviously it's a redout instead of whiteout for demonstration purposes ;-) Obviously this code is not perfect: It may whiteout only parts of a mensuration line if the vertical edge of the whiteout area is on top of only parts of the mensuration line. Slightly increasing/decreasing the whiteout value would help in that situation. It would be better to detect collision with mensuration lines and to insert whiteout code only if it is needed. I don't know enough of the lilypond internals to implement that within reasonable time. The code does not check whiteout-style ... don't know how to access that from within lyric-hyphen.cc. Obviously a similar patch is needed for LyricExtender grobs if you agree that something like this patch should be part of lilypond. cu, Knut
WhiteoutOrig.jpg
Description: JPEG image
WhiteoutImproved.jpg
Description: JPEG image
WhiteoutEvenBetter-A.jpg
Description: JPEG image
WhiteoutEvenBetter-B.jpg
Description: JPEG image
0001-Experimental-Implement-special-whiteout-for-LyricHyp.patch
Description: Text Data
[Prev in Thread] | Current Thread | [Next in Thread] |