FreeSerif ligatures not working in Musescore

• Apr 9, 2019 - 21:44
Reported version
3.0
Priority
P2 - Medium
Type
Functional
Frequency
Many
Severity
S3 - Major
Reproducibility
Always
Status
active
Regression
No
Workaround
No
Project

Mac OS 10.13.6
Musescore 3.0.5.21342, revision 58dd23d

Ligatures not appear to be working with FreeSerif. I have tested this font in other programs (screenshot attached of words with f-ligatures set in Adobe Illustrator), and there does not appear to be anything wrong with the font itself.

Ligatures appear to work with other fonts in Musescore — I tried Adobe Garamond and a handful of others — and the letter combinations of fi, fl, ffi, ffl and ff were all properly substituted with ligatures.

To test the fonts themselves, I re-compiled the feature set of the four FreeSerif fonts in FontLab VI (Version 6.1.3.7016), and exported the fonts in the same format (OpenType TT), replaced the fonts in the Musescore resources/font folder with the new versions, and restarted my Mac. But the issue persists.

It is possible that FreeSerif has become too robust — it supports many languages, including Cherokee, Georgian and Thai — and that certain code is simply ignored by MuseScore because there is no room in memory to process it. I bring up this possibility because of an issue I used to have with Microsoft Word. If you used a font that had over 500 kerning pairs, it simply ignored all of the kerning in the font. Maybe something like this is happening with Musescore. I've also attached a file that uses the word "Affettuoso" set in FreeSerif Bold Italic, and a screen shot of the problem as well.

Perhaps there is a section of memory defined in Musescore for individual fonts that needs to be enlarged for the OT features to take effect, especially since there is so much code in this font it might simply be running out of space.


Comments

I am no expert, but I do know that there are different formats of tables that fonts can use, particularly for kerning. Maybe the version of FreeSerif you are testing (your own locally installed one? the one built in to MuseScore) is using the "wrong" types).

In reply to by Marc Sabatella

The one built into MuseScore. Fonts can have regular kerning tables, and also have kerning in OpenType feature sets. However, a ligature is not a kerned set of letters, but a separate glyph. The ligature feature set includes code for substituting certain groups of letters for ligatures (specifically ff, ffi, ffl, fi and fl, sometimes fh, fj, ffj, ffh, fk and ffk). FreeSerif has built-in ligatures for the first five listed, but MuseScore is not recognizing them. It recognizes ligatures in other fonts, like Adobe Garamond Pro.

If you are using the version of FreeSerif built into MsueScore, how are you testing it in other applications, then? Did you copy it from the source tree and install it? Or are you using a different version of the font with the other programs?

BTW, I know ligatures are separate form kerning, but they too are represented in tables, and I was guessing there are different formats for these tables just as I know there are for kern tables.

In any case, I can confirm that ligatures in other fonts work fine in MuseScore, and that the version of FreeSerif in our source tree does contain the ligature tables, they work fine from FontForge.

In reply to by Marc Sabatella

I copied it from the fonts folder in MuseScore and installed it in the system. I use FontLabVI, and everything in the Musescore FreeSerif seems to be in place, but it just doesn't work in the Musescore itself. I also have replaced the FreeSerif font with what seems to be a newer version (for example, two lowercase fs are kerned, which gives a better appearance. Musescore still does not substitute a ligature with this different version of the font.