[smufl-discuss] Re: BravuraText and multi-note chords

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[smufl-discuss] Re: BravuraText and multi-note chords

Glenn Linderman
On 11/14/2014 1:48 AM, Daniel Spreadbury wrote:

> Glenn wrote:
>
>> I don't find a ligature or codepoint that allows for stacking
>> multiple notes into a chord. For example, to be able to place an F
>> and an A in the same chord on the treble staff... a third. Or
>> similarly a fifth. This makes it hard to discuss such topics in text.
>
> You're correct that at present there's no practical way to build a chord
> using Bravura Text alone. There are some zero-width characters in Bravura
> Text, but none of the precomposed notes or individual noteheads, which
> might be the expected way to build chords, allow this.
>
> One possible approach would be to add backwards spaces (i.e. characters
> with negative right side-bearings) to act as counterparts to the three
> forwards space characters that are included (assigned to Space, -
> (hyphen), and = (equals), moving by 1/2 a space, one space and two spaces
> respectively), but I suspect that the behaviour of such backwards spaces
> would not be particularly reliable, and would differ substantially between
> applications. This may also require a backwards space character that is
> precisely the same width as a notehead (which is neither half a space, nor
> one nor two spaces).


First off, I know very little about design of scalable fonts, I've been
using a hand-drawn (by associates, not myself) bit-mappped music font
for my music typesetting and book publishing for the last 30 years, but
it is clear that scalable fonts are the proper future, and current
projects would be greatly enhanced by using such, and the timing of the
release of SMUFL and Bravura was perfect to draw my attention and
confirm that the current crop of music fonts, from Sonata (which I
purchased but because of its limitations never used when it first became
available) through the present were, in fact, inconsistent and
incompatible with each other, and were not particularly easy to work
with even in a notation program. And while I intend to incorporate
Bravura into my notation program, and have no need for BravuraText
within that program, my investigations at the moment are regarding
whether or not BravuraText would suffice for use within a music ebook,
to include a rough form of notation, not intended to be perfect or
printed, so these issues came up.

Regarding this note-stacking issue, my first thought was that I was
missing something. My second thought speculated about backward spaces.
My third thought speculated about zero width characters. Is it possible
that a ligature could be applied that converts a following glyph into a
zero width character (like the staff characters are by nature),
resulting in the ability to stack a number of zero width note, and then
toss in a "normal", "regular", "non-zero width" note to achieve the
spacing (that one possibly having a stem with a flag, whereas the others
would have no stems, or at least no flag, depending on the needs and
duration of the chord at hand.  Or maybe all text notes should be zero
width, with various space sizes then used to make forward progress
across the line.

This sort of solution would solve the note stacking problem, but not the
time signature problem, especially for time signatures containing
multiple digits.


> I will add this to my list of things to look at when I next work on the
> fonts.
>
>> Similar to this are the problems of aligning a bar line at the end
>> of a staff character, or the variant horziontal spacing of the
>> augmentation dot... it appears after the flag, for notes having a
>> flag, but jammed right up against the note, for notes not having a
>> flag.  The former is too far apart, and the latter too close together.
>
> You can use Space, - or = to insert spaces of various sizes, as described
> above.


Together with zero width notes, this sort of spacing could possibly be
adequate? Might we ask for quarter-size and eighth-size spaces as well,
to have finer control?


>> Another similar issue is that a 3/4 time signature looks to em like
>> the 3 is slightly to the left of the 4. Maybe they are aligned on
>> the left edge, instead of centered? It is not at all obvious how to
>> achieve centering.
>
> Time signatures are currently drawn with ligatures, to move the digits
> into appropriate positions for numerators and denominators, but because
> each number is moved independently, there is no knowledge of which numbers
> are being used in the time signature itself. It might be possible to do a
> further ligature substitution such that if a string consists of (say)
> "timeSigCombNumerator timeSig3 timeSigCombDenominator timeSig4" it
> replaces those four glyphs (two non-printing, two printing) with a single
> glyph that contains correctly aligned "3/4" digits, and perhaps this could
> be done for a subset of reasonably common time signatures.
>
> I will also add this to my backlog of future ideas for the fonts.


 From the comments of others, and consideration of time signatures with
multiple digits top and/or bottom, it sounds like it would be difficult
to achieve a complete solution within the font, but maybe there is some
clever technique with the attachment points as discussed. If not, then a
solution just be that SMUFL and BravuraText (but Bravura wouldn't need
them) might want to include a repertoire of common precomposed, time
signatures, rather than just the digits.


I could likely work-around all these positioning issues using multiple
layers of text, but that gets rather complex to ensure the proper
alignment of things, although perhaps once an appropriate layered
structure is created, perhaps it could be used as a template... and
depending on the size of the template, it could solve the time signature
problem, but if it is extremely large, may not be practical to use for
each chord, and not all text applications support layers, so its
applicability would be limited. I'm focusing primarily on HTML ebooks,
and HTML does support layers, but does get wordy fast when complex
structures are crafted...

I appreciate the quick response and confirmation that I'm seeing things
that don't have present solutions, so that rather than banging my head
against the wall of thinking I'm missing something in the font, I can
focus attention in the short term, for use with the present font, on
some layered approach to dealing with alignment issues.


> Daniel

#############################################################
This message is sent to you because you are subscribed to
  the mailing list <[hidden email]>.
To unsubscribe, E-mail to: <[hidden email]>
To switch to the DIGEST mode, E-mail to <[hidden email]>
To switch to the INDEX mode, E-mail to <[hidden email]>
Send administrative queries to  <[hidden email]>