Fix cluster calculation for non-LTR text
This commit is contained in:
parent
4a68684654
commit
dd89d958c1
6
TODO
6
TODO
|
@ -1,12 +1,6 @@
|
||||||
General fixes:
|
General fixes:
|
||||||
=============
|
=============
|
||||||
|
|
||||||
- Instead of forming clusters immediately, only do it if we are reversing
|
|
||||||
the text. We'd need a separate bit to indicate cluster start then.
|
|
||||||
|
|
||||||
- Right now, BTW, for non-native direction runs, we get the cluster wrong...
|
|
||||||
Should do min(input-glyphs.cluster)
|
|
||||||
|
|
||||||
- Fix TT 'kern' on/off and GPOS interaction (move kerning before GPOS)
|
- Fix TT 'kern' on/off and GPOS interaction (move kerning before GPOS)
|
||||||
|
|
||||||
- Do proper rounding when scaling from font space?
|
- Do proper rounding when scaling from font space?
|
||||||
|
|
|
@ -386,6 +386,11 @@ _hb_buffer_replace_glyphs_be16 (hb_buffer_t *buffer,
|
||||||
}
|
}
|
||||||
|
|
||||||
hb_glyph_info_t orig_info = buffer->info[buffer->i];
|
hb_glyph_info_t orig_info = buffer->info[buffer->i];
|
||||||
|
for (unsigned int i = 1; i < num_in; i++)
|
||||||
|
{
|
||||||
|
hb_glyph_info_t *info = &buffer->info[buffer->i + i];
|
||||||
|
orig_info.cluster = MIN (orig_info.cluster, info->cluster);
|
||||||
|
}
|
||||||
|
|
||||||
for (unsigned int i = 0; i < num_out; i++)
|
for (unsigned int i = 0; i < num_out; i++)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue