Replies: 2 comments
-
Is this an issue with Verovio, or an issue with the fonts that do not have those symbols in them? |
Beta Was this translation helpful? Give feedback.
-
There is a mixture. Leipzig displays elisions properly, so it is currently the only font that can be used if you want to have elisions. So in that sense it is a font problem. Previously any music font could be used, because VerovioText managed the elisions (and it stole the elisions from Leipzig). And in that case it is verovio's fault for breaking the older working system. (but the newer system will be better in the long run). However, even if there were elisions in all fonts (note that Bravura's is unusually wide), there are still refinements in verovio that probably need to be done, such as being able to choose which elision size to use (narrow, rebular, or wide). And another suggestion is to use a text font's elision glyph rather than the music fonts glyph (which seems more proper to me). (This is why I made it a discussion rather than an issue). |
Beta Was this translation helpful? Give feedback.
-
I notice a problem with consistency elision mark displays in lyrics in the new musical font system for text. Previously there was only one elision marker being use from the VerovioText font. Now this is delegated to the individual musical fonts. Here are the current views of the elision marks in the various fonts:
This is the previous elision that was always used.
Click to view the MEI data for the above example.
In Bravura the elision mark is excessively wide:
Similarly in Petaluma:
In Leland and Gootville there is no apparent elision mark, but there is a space:
Here is the list of elision glyphs from SMuFL glyph sampler (displayed in Bravura):
https://www.smufl.org/version/latest/range/lyrics
The glyph hex code is
E551
, which is thelyricsElision
in SMuFL. Here is thelyricsEllisonNarrow
(E550) in Leipzig:Click to view SVG code for above image (E550 glyph)
You can replace
&xe550;
with other elision glyph numbers to see how they behave.So it is narrower, but the font metrics are not used in verovio (notice the gap between the elision and the letter
b
). This is one thing that should be fixed and for which I could create an issue.Another problem is that the Bravura standard elision is too wide. It would be useful to clarify the length of elisions. I would say that a narrow elision should be the width of a space in the text font, a standard elision should the width of an
n
(en-dash), and a wide elision should be the width of anm
(em-dash). Notice that these are related to the text font being used rather than to the music font being used. Otherwise, it would be good to have a fixed vu size for each of these three widths of elisions (and this could be a SMuFL issue if there is no standard lengths for elisions given in the documentation).Related, it would be useful in the future to be able to specify which elision to use in the notation rendering, either within MEI or as an option for verovio, such as
--elision narrow|wide
and the default would be the regular elision width. If done in MEI, then perhapssyl@con
would have the additional options ofbn
andbw
(this would be good only if there are cases where elisions are different widths within the same score; otherwise, it would be better to have as a verovio option).More properly, the elision character should be handled by the text font. In unicode it is
͜
:https://www.fileformat.info/info/unicode/char/035c/index.htm
This exists in the TimesRoman(-like) font that the lyrics are in:
(misplaced because I replaced the Leland elision, where the origin is probably different). So one solution that I like would be to use
͜
in text renderings (<syl>
and<rend>
etc.) without changing to a music font to insert the elision. Or if possible, detect if there is one in the text font and use the music font one if the text font does not have an elision (this is probably not possible or practical, and I will often use CSS to change the font after it is rendered in TimesRoman(ish).And another problem is that Leland and Gootville fonts do not have (or do not seem to have) elision characters. In the music, this problem is addressed by having a fallback to another font, first to Leipzig, and then to Bravura if Leipzig does not define the desired glyph. In the old VerovioText system, this was not a problem because there was only one font. In the new system, a fallback system cannot be used in the text, other than adding multiple font files to the SVG image (which would likely cause unnecessary bloat in the SVG image), or a fallback glyph could be inserted into the embedded font (this is interesting, but probably too time-consuming to implement). Another solution for this particular problem would be to have Leland and Gootville fonts add the elision glyphs, although there would be similar fallback problems when trying to use an undefined glyph in any given music font (and most of them will not be as complete as Bravura).
The Tasso in Music Project website also demonstrates the problem with a different behavior, where it is currently using Leland for the music font (but I will probably change it to Leipzig for now, since Leipzig is the only music font that works satisfactorily). In the web browser the missing glyph is brought to attention as a pretty black box:
https://www.tassomusic.org/work/?id=Trm0047a
Beta Was this translation helpful? Give feedback.
All reactions