-
Notifications
You must be signed in to change notification settings - Fork 660
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ledger Line Logic #569
Ledger Line Logic #569
Conversation
Moves all ledger line drawing to StaveNote, which now respects the stave line style settings of its Stave object by default. (Ledger line style can also be set via staveNote.setLedgerLineStyle().)
Thanks for the change. What do the visual regression diffs look like? (particularly the rests) Re: #999999, I'm open to darkening it. |
These look sane to me. Feel free to merge. 👍 |
Great -- will do. Also: I'm wondering if we should bump the release version sometime soon. The current version (1.2.83, Sept. 2016) doesn't reflect the new accidental types, and many of the rewritten tests from last summer. (I only noticed because to get accurate visual regressions I had to build from a clean |
Ah, yes. I'll bump it. |
Hi -- I think i'm late to the game, but I'm strongly against the coloring of the ledger lines the same color as the staff -- they look too easy to miss count to me. There's no notational rule i can cite -- but then of course having staves a different color as the notes is also a new thing (at least new since 1500). |
How about leaving the default as-is (i.e., before this commit) and add an
option?
(Also, darkening the stave lines might help a bit.)
On Jul 30, 2017 7:29 PM, "Michael Scott Cuthbert" <notifications@github.com> wrote:
Hi -- I think i'm late to the game, but I'm strongly against the coloring
of the ledger lines the same color as the staff -- they look too easy to
miss count to me. There's no notational rule i can cite -- but then of
course having staves a different color as the notes is also a new thing (at
least new since 1500).
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#569 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AAOuk4OvLzsTlUYiFtZKsExUE4BvgGObks5sTRHZgaJpZM4Onavo>
.
|
I tend to agree, Michael -- though having the ledger lines a different style from the stave lines feels very odd to me. In both Finale & Sibelius they are good old fashioned black ( Staves & Ledgers at Staves & Ledgers at How do we feel about changing the default? Would this solve it from your perspective, @mscuthbert? |
I LOVE the gray staff lines -- I think that when @0xfe or whoever chose this as a default, it's brilliant; it makes the music stand out the way ink on really good manuscript staff paper does. Because the stafflines run the whole extent of the horizontal span, they don't need to be very prominent -- they're constantly in your field of vision. Ledger lines, however are mostly covered up so they need to be more prominent. Maybe thickness would be more important than color. Elaine Gould, Behind Bars, p. 26, says "Ledger lines are an extension of the stave. They are spaced the same width apart as the stave-lines, but they are about twice as thick." (emphasis added) Gould continues "It is important that ledger lines are visibly thicker than stave-lines so that a player reading a passage of ledger-line notes can take in the number of ledger lines at a glance." So perhaps they're fine as #999999 but just thicker? |
I think that the last looks best, but if lineWidth can take a float then 1.5 and #333333 might be the best compromise? |
The last looks best to me. Thanks for all the hard work! I'll try to look through examples that make counting difficult (generally, telling the difference between 3, 4, and 5 ledger lines on monophonic music) and see how much thickness is necessary to make it stand out properly. But it's looking much better! |
Fixes #566, fixes ledger line formatting issues remaining in #557.
Changes:
StaveNote
NoteHead
Stave.setStyle()
is now available to match the api's of otherElement
s.StaveNote.setLedgerLineStyle()
usesStave.getStyle()
as its default style, merging onto it any changes.This results in two obvious visual changes throughout with ledger lines:
#999999
by default (matchingStave.options.fill_style
's default).Before:
After:
To my eyes, I really appreciate the consistency of style between the ledger lines and the staves. However: I find myself wondering if
#999999
is too light of a default now that the ledger lines are the same color and thinner. Thoughts?Finally, the NoteHead Bounding Boxes test loses a ledger line because this logic is moved into
StaveNote
. This isn't a grave concern to me -- I think it's pretty unlikely anyone is using VexFlow in a way that they're relying onNoteHead
to draw a ledger line. (And, anyway, it would only ever draw the final ledger line before a note -- not all of the ones between the note and the staff.)Before:
After:
That said: if anyone sees an issue with consolidating ledger lines in
StaveNote
please let me know. I'll hold off on merging this for a few days.Thanks!