sibmei
sibmei copied to clipboard
Conversion of `text.character.musictext` character style
When I have a text item with the following content, how should that be converted?
Allegro \ctext.character.musictext\q.\f_\=120
"q." signifies a dotted quarter. The guidelines suggest to use <rend> with the font name. But this:
rend = libmei.Rend();
libmei.AddAttribute(rend, 'fontname', score.MusicTextFontName);
libmei.SetText(rend, 'q.');
...is not really satisfactory for a consuming application. However, this output:
<tempo>Allegro <rend fontname="Opus Text Std"></rend>=120</tempo>
...is weird as well because those SMuFL codepoints do not exist in that font. My favourite solution would be something font agnostic like this:
<tempo>Allegro <symbol
glyph.name="noteQuarterUp" glyph.num="#xE1D5" glyph.auth="smufl"
/><symbol
glyph.name="augmentationDot" glyph.num="#xE1E7" glyph.auth="smufl"
/>=120</tempo>
Agree/disagree?
Agree 👍 (to font agnostic solution)