Support Arabic fallback shaping
- Dominant language
- Rust
- Stars
- 301
- Forks
- 26
- Avg merge
- 10h 11m
- Merged PRs (30d)
- 43
Description
Test text:
ح ب ا حبا
It consists of two parts (separated with a space):
حبا
ح ب ا
The second part is basically the first part with every character delimited with space (in order to cancel ligatures).
Related buffer config:
```rs
buffer.set_direction(rustybuzz::Direction::RightToLeft);
buffer.set_language(rustybuzz::Language::from_str("ar").unwrap());
buffer.set_script(rustybuzz::script::ARABIC);
```
Test case 1 (unifont-15.0.01.ttf)
Shaped glyph id:
harfbuzz `56721 56725 56237 35 56720 35 56722 35 56740`
rustybuzz `1578 1579 1584 35 1578 35 1579 35 1584`
So firstly, I had tested with unifont, and rustybuzz failed to handle the ligatures. I thought I must had got something wrong, but then I tested with another font.
Test case 2 (HONORSansArabicUI-B.ttf)
Shaped glyph id:
harfbuzz `7 33 97 1 5 1 30 1 93`
rustybuzz `7 33 97 1 5 1 30 1 93`
And the result is correct and conforms to that of harfbuzz.
There might be something off with rustybuzz.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.