[Indic] Apply 'cfar' for Khmer
Mark stuff after a pre-base reordering Ro 'cfar'. Used in Khmer. This allows distinguishing the following cases with MS Khmer fonts: U+1784,U+17D2,U+179A,U+17D2,U+1782 U+1784,U+17D2,U+1782,U+17D2,U+179A
This commit is contained in:
parent
55f70ebfb9
commit
0201e0a464
@ -154,6 +154,7 @@ indic_basic_features[] =
|
||||
{HB_TAG('h','a','l','f'), false},
|
||||
{HB_TAG('a','b','v','f'), false},
|
||||
{HB_TAG('p','s','t','f'), false},
|
||||
{HB_TAG('c','f','a','r'), false},
|
||||
{HB_TAG('c','j','c','t'), false},
|
||||
{HB_TAG('v','a','t','u'), true},
|
||||
};
|
||||
@ -169,6 +170,7 @@ enum {
|
||||
HALF,
|
||||
ABVF,
|
||||
PSTF,
|
||||
CFAR,
|
||||
CJCT,
|
||||
VATU
|
||||
};
|
||||
@ -547,8 +549,18 @@ initial_reordering_consonant_syllable (const hb_ot_map_t *map, hb_buffer_t *buff
|
||||
if (is_halant_or_coeng (info[i]) &&
|
||||
info[i + 1].indic_category() == OT_Ra)
|
||||
{
|
||||
info[i].mask |= basic_mask_array[PREF];
|
||||
info[i + 1].mask |= basic_mask_array[PREF];
|
||||
info[i++].mask |= basic_mask_array[PREF];
|
||||
info[i++].mask |= basic_mask_array[PREF];
|
||||
|
||||
/* Mark the subsequent stuff with 'cfar'. Used in Khmer.
|
||||
* Read the feature spec.
|
||||
* This allows distinguishing the following cases with MS Khmer fonts:
|
||||
* U+1784,U+17D2,U+179A,U+17D2,U+1782
|
||||
* U+1784,U+17D2,U+1782,U+17D2,U+179A
|
||||
*/
|
||||
for (; i < end; i++)
|
||||
info[i].mask |= basic_mask_array[CFAR];
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -10,3 +10,5 @@
|
||||
រ្ឥ
|
||||
ងឹ្ឈ
|
||||
ង្ឈឹ
|
||||
ង្គ្រ
|
||||
ង្រ្គ
|
||||
|
Loading…
Reference in New Issue
Block a user