I'm trying to understand an observed behavior in the new Cascadia Code Arabic font.
Here is a sequence used for the lam_lam_heh-ar
ligature, with a couple of diacritics added:uni0644
uni064E
uni0644
uni064F
uni0647
With the sequence (LTR, for convenience):lam_lam_hehar
uni064E
uni064F
LIG
(The LIG is an empty glyph added to maintain alignment with the monospace grid)
However, the output should look like:
I can achieve this output by removing the substitution that adds the LIG
character:sub [lam_lam_heh-ar allah-ar] @vocal damma-ar' by damma-ar LIG;
As far as I can tell, the OT mark to ligature feature in the font is working as expected, and this is purely on the rendering engine side (macOS renders it correctly). It appears that the presence of the LIG
character is changing how Harfbuzz analyzes the mark positioning and thus is causing the mark next to the LIG
to be incorrectly positioned.
While I have a workaround (shift the position of the LIG
to before the ligature), I was wondering if you could help clarify what is causing this behavior.
Thanks!
For convenience, here is the latest version of the font:
CascadiaCode.ttf.zip
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4