mirror of
https://github.com/reactos/wine.git
synced 2025-02-27 16:26:08 +00:00
usp10: Apply 'vatu' to the Indic syllable.
This commit is contained in:
parent
7f0b49fd9d
commit
c582e3b2a2
@ -374,8 +374,6 @@ static const char* required_syriac_features[] =
|
||||
|
||||
static OPENTYPE_FEATURE_RECORD sinhala_features[] =
|
||||
{
|
||||
/* Base forms */
|
||||
{ MS_MAKE_TAG('v','a','t','u'), 1},
|
||||
/* Presentation forms */
|
||||
{ MS_MAKE_TAG('b','l','w','s'), 1},
|
||||
{ MS_MAKE_TAG('a','b','v','s'), 1},
|
||||
@ -418,7 +416,6 @@ static const char* required_devanagari_features[] =
|
||||
static OPENTYPE_FEATURE_RECORD devanagari_features[] =
|
||||
{
|
||||
/* Base forms */
|
||||
{ MS_MAKE_TAG('v','a','t','u'), 1},
|
||||
{ MS_MAKE_TAG('c','j','c','t'), 1},
|
||||
/* Presentation forms */
|
||||
{ MS_MAKE_TAG('p','r','e','s'), 1},
|
||||
@ -449,7 +446,6 @@ static const char* required_bengali_features[] =
|
||||
static OPENTYPE_FEATURE_RECORD bengali_features[] =
|
||||
{
|
||||
/* Base forms */
|
||||
{ MS_MAKE_TAG('v','a','t','u'), 1},
|
||||
{ MS_MAKE_TAG('c','j','c','t'), 1},
|
||||
/* Presentation forms */
|
||||
{ MS_MAKE_TAG('p','r','e','s'), 1},
|
||||
@ -482,7 +478,6 @@ static const char* required_gurmukhi_features[] =
|
||||
static OPENTYPE_FEATURE_RECORD gurmukhi_features[] =
|
||||
{
|
||||
/* Base forms */
|
||||
{ MS_MAKE_TAG('v','a','t','u'), 1},
|
||||
{ MS_MAKE_TAG('c','j','c','t'), 1},
|
||||
/* Presentation forms */
|
||||
{ MS_MAKE_TAG('p','r','e','s'), 1},
|
||||
@ -609,7 +604,7 @@ static const ScriptShapeData ShapingData[] =
|
||||
{{ standard_features, 2}, NULL, "cyrl", "", NULL, NULL},
|
||||
{{ standard_features, 2}, NULL, "armn", "", NULL, NULL},
|
||||
{{ standard_features, 2}, NULL, "geor", "", NULL, NULL},
|
||||
{{ sinhala_features, 4}, NULL, "sinh", "", ContextualShape_Sinhala, NULL},
|
||||
{{ sinhala_features, 3}, NULL, "sinh", "", ContextualShape_Sinhala, NULL},
|
||||
{{ tibetan_features, 2}, NULL, "tibt", "", NULL, ShapeCharGlyphProp_Tibet},
|
||||
{{ tibetan_features, 2}, NULL, "tibt", "", NULL, ShapeCharGlyphProp_Tibet},
|
||||
{{ tibetan_features, 2}, NULL, "phag", "", ContextualShape_Phags_pa, ShapeCharGlyphProp_Thai},
|
||||
@ -617,15 +612,15 @@ static const ScriptShapeData ShapingData[] =
|
||||
{{ thai_features, 1}, NULL, "thai", "", NULL, ShapeCharGlyphProp_Thai},
|
||||
{{ thai_features, 1}, required_lao_features, "lao", "", NULL, ShapeCharGlyphProp_Thai},
|
||||
{{ thai_features, 1}, required_lao_features, "lao", "", NULL, ShapeCharGlyphProp_Thai},
|
||||
{{ devanagari_features, 8}, required_devanagari_features, "deva", "dev2", ContextualShape_Devanagari, ShapeCharGlyphProp_Devanagari},
|
||||
{{ devanagari_features, 8}, required_devanagari_features, "deva", "dev2", ContextualShape_Devanagari, ShapeCharGlyphProp_Devanagari},
|
||||
{{ bengali_features, 8}, required_bengali_features, "beng", "bng2", ContextualShape_Bengali, ShapeCharGlyphProp_Bengali},
|
||||
{{ bengali_features, 8}, required_bengali_features, "beng", "bng2", ContextualShape_Bengali, ShapeCharGlyphProp_Bengali},
|
||||
{{ gurmukhi_features, 8}, required_gurmukhi_features, "guru", "gur2", ContextualShape_Gurmukhi, ShapeCharGlyphProp_Gurmukhi},
|
||||
{{ gurmukhi_features, 8}, required_gurmukhi_features, "guru", "gur2", ContextualShape_Gurmukhi, ShapeCharGlyphProp_Gurmukhi},
|
||||
{{ devanagari_features, 8}, required_devanagari_features, "gujr", "gjr2", ContextualShape_Gujarati, ShapeCharGlyphProp_Gujarati},
|
||||
{{ devanagari_features, 8}, required_devanagari_features, "gujr", "gjr2", ContextualShape_Gujarati, ShapeCharGlyphProp_Gujarati},
|
||||
{{ devanagari_features, 8}, required_devanagari_features, "gujr", "gjr2", ContextualShape_Gujarati, ShapeCharGlyphProp_Gujarati},
|
||||
{{ devanagari_features, 7}, required_devanagari_features, "deva", "dev2", ContextualShape_Devanagari, ShapeCharGlyphProp_Devanagari},
|
||||
{{ devanagari_features, 7}, required_devanagari_features, "deva", "dev2", ContextualShape_Devanagari, ShapeCharGlyphProp_Devanagari},
|
||||
{{ bengali_features, 7}, required_bengali_features, "beng", "bng2", ContextualShape_Bengali, ShapeCharGlyphProp_Bengali},
|
||||
{{ bengali_features, 7}, required_bengali_features, "beng", "bng2", ContextualShape_Bengali, ShapeCharGlyphProp_Bengali},
|
||||
{{ gurmukhi_features, 7}, required_gurmukhi_features, "guru", "gur2", ContextualShape_Gurmukhi, ShapeCharGlyphProp_Gurmukhi},
|
||||
{{ gurmukhi_features, 7}, required_gurmukhi_features, "guru", "gur2", ContextualShape_Gurmukhi, ShapeCharGlyphProp_Gurmukhi},
|
||||
{{ devanagari_features, 7}, required_devanagari_features, "gujr", "gjr2", ContextualShape_Gujarati, ShapeCharGlyphProp_Gujarati},
|
||||
{{ devanagari_features, 7}, required_devanagari_features, "gujr", "gjr2", ContextualShape_Gujarati, ShapeCharGlyphProp_Gujarati},
|
||||
{{ devanagari_features, 7}, required_devanagari_features, "gujr", "gjr2", ContextualShape_Gujarati, ShapeCharGlyphProp_Gujarati},
|
||||
{{ oriya_features, 7}, required_oriya_features, "orya", "ory2", ContextualShape_Oriya, ShapeCharGlyphProp_Oriya},
|
||||
{{ oriya_features, 7}, required_oriya_features, "orya", "ory2", ContextualShape_Oriya, ShapeCharGlyphProp_Oriya},
|
||||
{{ tamil_features, 6}, required_tamil_features, "taml", "tam2", ContextualShape_Tamil, ShapeCharGlyphProp_Tamil},
|
||||
@ -2112,6 +2107,7 @@ static void ShapeIndicSyllables(HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa,
|
||||
const GSUB_Feature *akhn = load_GSUB_feature(hdc, psa, psc, "akhn");
|
||||
const GSUB_Feature *rkrf = load_GSUB_feature(hdc, psa, psc, "rkrf");
|
||||
const GSUB_Feature *pstf = load_GSUB_feature(hdc, psa, psc, "pstf");
|
||||
const GSUB_Feature *vatu = load_GSUB_feature(hdc, psa, psc, "vatu");
|
||||
BOOL rphf = (load_GSUB_feature(hdc, psa, psc, "rphf") != NULL);
|
||||
BOOL pref = (load_GSUB_feature(hdc, psa, psc, "pref") != NULL);
|
||||
BOOL blwf = (load_GSUB_feature(hdc, psa, psc, "blwf") != NULL);
|
||||
@ -2158,6 +2154,11 @@ static void ShapeIndicSyllables(HDC hdc, ScriptCache *psc, SCRIPT_ANALYSIS *psa,
|
||||
TRACE("applying feature pstf\n");
|
||||
Apply_Indic_BasicForm(hdc, psc, psa, pwChars, cChars, &syllables[c], pwOutGlyphs, pcGlyphs, pwLogClust, lexical, &glyph_indexs, pstf);
|
||||
}
|
||||
if (vatu)
|
||||
{
|
||||
TRACE("applying feature vatu\n");
|
||||
Apply_Indic_BasicForm(hdc, psc, psa, pwChars, cChars, &syllables[c], pwOutGlyphs, pcGlyphs, pwLogClust, lexical, &glyph_indexs, vatu);
|
||||
}
|
||||
|
||||
overall_shift += glyph_indexs.end - old_end;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user