diff options
author | Sascha Brawer <sascha@google.com> | 2017-05-03 20:16:24 +0200 |
---|---|---|
committer | Werner Lemberg <wl@gnu.org> | 2017-05-03 20:16:24 +0200 |
commit | 0483fb386180b7108dd6c0e61e2c0560bce4d592 (patch) | |
tree | 493bf47822d897c1190233ffd9d61a2f95fc3bd6 /src/autofit | |
parent | 14ae17a25f787c966fa9e532499c93461181b81b (diff) | |
download | freetype2-0483fb386180b7108dd6c0e61e2c0560bce4d592.tar.gz |
[autofit] Add blue-zone support for Sundanese script.
This essentially moves the Sundanese script from the `Indic' hinter
to the `Latin' hinter.
* src/autofit/afblue.dat: Add blue zone data for Sundanese.
* src/autofit/afblue.c, src/autofit/afblue.h: Regenerated.
* src/autofit/afscript.h: Add Sundanese standard character and move
data out of AF_CONFIG_OPTION_INDIC block.
* src/autofit/afranges.c: Move Sundanese data out of
AF_CONFIG_OPTION_INDIC block.
* src/autofit/afstyles.h: Update Sundanese data; in particular, use
AF_WRITING_SYSTEM_LATIN.
Diffstat (limited to 'src/autofit')
-rw-r--r-- | src/autofit/afblue.c | 10 | ||||
-rw-r--r-- | src/autofit/afblue.dat | 13 | ||||
-rw-r--r-- | src/autofit/afblue.h | 46 | ||||
-rw-r--r-- | src/autofit/afloader.c | 2 | ||||
-rw-r--r-- | src/autofit/afranges.c | 34 | ||||
-rw-r--r-- | src/autofit/afscript.h | 13 | ||||
-rw-r--r-- | src/autofit/afstyles.h | 8 |
7 files changed, 80 insertions, 46 deletions
diff --git a/src/autofit/afblue.c b/src/autofit/afblue.c index 0fd6e881d..992d6b13e 100644 --- a/src/autofit/afblue.c +++ b/src/autofit/afblue.c @@ -282,6 +282,12 @@ '\0', '\xE0', '\xB6', '\xAF', ' ', '\xE0', '\xB6', '\xB3', ' ', '\xE0', '\xB6', '\x8B', ' ', '\xE0', '\xB6', '\xBD', ' ', '\xE0', '\xB6', '\xAD', '\xE0', '\xB7', '\x96', ' ', '\xE0', '\xB6', '\xAD', '\xE0', '\xB7', '\x94', ' ', '\xE0', '\xB6', '\xB6', '\xE0', '\xB7', '\x94', ' ', '\xE0', '\xB6', '\xAF', '\xE0', '\xB7', '\x94', /* ද ඳ උ ල තූ තු බු දු */ '\0', + '\xE1', '\xAE', '\x8B', ' ', '\xE1', '\xAE', '\x9E', ' ', '\xE1', '\xAE', '\xAE', ' ', '\xE1', '\xAE', '\xBD', ' ', '\xE1', '\xAE', '\xB0', ' ', '\xE1', '\xAE', '\x88', /* ᮋ ᮞ ᮮ ᮽ ᮰ ᮈ */ + '\0', + '\xE1', '\xAE', '\x84', ' ', '\xE1', '\xAE', '\x94', ' ', '\xE1', '\xAE', '\x95', ' ', '\xE1', '\xAE', '\x97', ' ', '\xE1', '\xAE', '\xB0', ' ', '\xE1', '\xAE', '\x86', ' ', '\xE1', '\xAE', '\x88', ' ', '\xE1', '\xAE', '\x89', /* ᮄ ᮔ ᮕ ᮗ ᮰ ᮆ ᮈ ᮉ */ + '\0', + '\xE1', '\xAE', '\xBC', ' ', '\xE1', '\xB3', '\x84', /* ᮼ ᳄ */ + '\0', '\xEA', '\xAA', '\x86', ' ', '\xEA', '\xAA', '\x94', ' ', '\xEA', '\xAA', '\x92', ' ', '\xEA', '\xAA', '\x96', ' ', '\xEA', '\xAA', '\xAB', /* ꪆ ꪔ ꪒ ꪖ ꪫ */ '\0', '\xEA', '\xAA', '\x89', ' ', '\xEA', '\xAA', '\xAB', ' ', '\xEA', '\xAA', '\xAE', /* ꪉ ꪫ ꪮ */ @@ -558,6 +564,10 @@ { AF_BLUE_STRING_SINHALA_BOTTOM, 0 }, { AF_BLUE_STRING_SINHALA_DESCENDER, 0 }, { AF_BLUE_STRING_MAX, 0 }, + { AF_BLUE_STRING_SUNDANESE_TOP, AF_BLUE_PROPERTY_LATIN_TOP }, + { AF_BLUE_STRING_SUNDANESE_BOTTOM, 0 }, + { AF_BLUE_STRING_SUNDANESE_DESCENDER, 0 }, + { AF_BLUE_STRING_MAX, 0 }, { AF_BLUE_STRING_TAMIL_TOP, AF_BLUE_PROPERTY_LATIN_TOP }, { AF_BLUE_STRING_TAMIL_BOTTOM, 0 }, { AF_BLUE_STRING_MAX, 0 }, diff --git a/src/autofit/afblue.dat b/src/autofit/afblue.dat index be0ae420f..00052f7f7 100644 --- a/src/autofit/afblue.dat +++ b/src/autofit/afblue.dat @@ -376,6 +376,13 @@ AF_BLUE_STRING_ENUM AF_BLUE_STRINGS_ARRAY AF_BLUE_STRING_MAX_LEN: AF_BLUE_STRING_SINHALA_DESCENDER "ද ඳ උ ල තූ තු බු දු" + AF_BLUE_STRING_SUNDANESE_TOP + "ᮋ ᮞ ᮮ ᮽ ᮰ ᮈ" + AF_BLUE_STRING_SUNDANESE_BOTTOM + "ᮄ ᮔ ᮕ ᮗ ᮰ ᮆ ᮈ ᮉ" + AF_BLUE_STRING_SUNDANESE_DESCENDER + "ᮼ ᳄" + AF_BLUE_STRING_TAI_VIET_TOP "ꪆ ꪔ ꪒ ꪖ ꪫ" AF_BLUE_STRING_TAI_VIET_BOTTOM @@ -844,6 +851,12 @@ AF_BLUE_STRINGSET_ENUM AF_BLUE_STRINGSETS_ARRAY AF_BLUE_STRINGSET_MAX_LEN: { AF_BLUE_STRING_SINHALA_DESCENDER, 0 } { AF_BLUE_STRING_MAX, 0 } + AF_BLUE_STRINGSET_SUND + { AF_BLUE_STRING_SUNDANESE_TOP, AF_BLUE_PROPERTY_LATIN_TOP } + { AF_BLUE_STRING_SUNDANESE_BOTTOM, 0 } + { AF_BLUE_STRING_SUNDANESE_DESCENDER, 0 } + { AF_BLUE_STRING_MAX, 0 } + AF_BLUE_STRINGSET_TAML { AF_BLUE_STRING_TAMIL_TOP, AF_BLUE_PROPERTY_LATIN_TOP } { AF_BLUE_STRING_TAMIL_BOTTOM, 0 } diff --git a/src/autofit/afblue.h b/src/autofit/afblue.h index 4b6c264cf..13016a2cb 100644 --- a/src/autofit/afblue.h +++ b/src/autofit/afblue.h @@ -205,21 +205,24 @@ FT_BEGIN_HEADER AF_BLUE_STRING_SINHALA_TOP = 3279, AF_BLUE_STRING_SINHALA_BOTTOM = 3311, AF_BLUE_STRING_SINHALA_DESCENDER = 3343, - AF_BLUE_STRING_TAI_VIET_TOP = 3387, - AF_BLUE_STRING_TAI_VIET_BOTTOM = 3407, - AF_BLUE_STRING_TAMIL_TOP = 3419, - AF_BLUE_STRING_TAMIL_BOTTOM = 3451, - AF_BLUE_STRING_TELUGU_TOP = 3483, - AF_BLUE_STRING_TELUGU_BOTTOM = 3511, - AF_BLUE_STRING_THAI_TOP = 3539, - AF_BLUE_STRING_THAI_BOTTOM = 3563, - AF_BLUE_STRING_THAI_ASCENDER = 3591, - AF_BLUE_STRING_THAI_LARGE_ASCENDER = 3603, - AF_BLUE_STRING_THAI_DESCENDER = 3615, - AF_BLUE_STRING_THAI_LARGE_DESCENDER = 3631, - AF_BLUE_STRING_THAI_DIGIT_TOP = 3639, - AF_BLUE_STRING_TIFINAGH = 3651, - af_blue_1_1 = 3682, + AF_BLUE_STRING_SUNDANESE_TOP = 3387, + AF_BLUE_STRING_SUNDANESE_BOTTOM = 3411, + AF_BLUE_STRING_SUNDANESE_DESCENDER = 3443, + AF_BLUE_STRING_TAI_VIET_TOP = 3451, + AF_BLUE_STRING_TAI_VIET_BOTTOM = 3471, + AF_BLUE_STRING_TAMIL_TOP = 3483, + AF_BLUE_STRING_TAMIL_BOTTOM = 3515, + AF_BLUE_STRING_TELUGU_TOP = 3547, + AF_BLUE_STRING_TELUGU_BOTTOM = 3575, + AF_BLUE_STRING_THAI_TOP = 3603, + AF_BLUE_STRING_THAI_BOTTOM = 3627, + AF_BLUE_STRING_THAI_ASCENDER = 3655, + AF_BLUE_STRING_THAI_LARGE_ASCENDER = 3667, + AF_BLUE_STRING_THAI_DESCENDER = 3679, + AF_BLUE_STRING_THAI_LARGE_DESCENDER = 3695, + AF_BLUE_STRING_THAI_DIGIT_TOP = 3703, + AF_BLUE_STRING_TIFINAGH = 3715, + af_blue_1_1 = 3746, #ifdef AF_CONFIG_OPTION_CJK AF_BLUE_STRING_CJK_TOP = af_blue_1_1 + 1, AF_BLUE_STRING_CJK_BOTTOM = af_blue_1_1 + 203, @@ -313,12 +316,13 @@ FT_BEGIN_HEADER AF_BLUE_STRINGSET_ORKH = 158, AF_BLUE_STRINGSET_OSGE = 161, AF_BLUE_STRINGSET_SINH = 169, - AF_BLUE_STRINGSET_TAML = 173, - AF_BLUE_STRINGSET_TAVT = 176, - AF_BLUE_STRINGSET_TELU = 179, - AF_BLUE_STRINGSET_THAI = 182, - AF_BLUE_STRINGSET_TFNG = 190, - af_blue_2_1 = 193, + AF_BLUE_STRINGSET_SUND = 173, + AF_BLUE_STRINGSET_TAML = 177, + AF_BLUE_STRINGSET_TAVT = 180, + AF_BLUE_STRINGSET_TELU = 183, + AF_BLUE_STRINGSET_THAI = 186, + AF_BLUE_STRINGSET_TFNG = 194, + af_blue_2_1 = 197, #ifdef AF_CONFIG_OPTION_CJK AF_BLUE_STRINGSET_HANI = af_blue_2_1 + 0, af_blue_2_1_1 = af_blue_2_1 + 2, diff --git a/src/autofit/afloader.c b/src/autofit/afloader.c index ddf47ebcf..78c4368b6 100644 --- a/src/autofit/afloader.c +++ b/src/autofit/afloader.c @@ -300,7 +300,7 @@ scaler.flags = 0; /* note that the fallback style can't be changed anymore */ - /* after the first call of `ta_loader_load_glyph' */ + /* after the first call of `af_loader_load_glyph' */ error = af_loader_reset( loader, module, face ); if ( error ) goto Exit; diff --git a/src/autofit/afranges.c b/src/autofit/afranges.c index 8a74e59b2..66acf825e 100644 --- a/src/autofit/afranges.c +++ b/src/autofit/afranges.c @@ -52,8 +52,8 @@ /* not be affected by blue zones, regardless of whether this is a */ /* spacing or no-spacing glyph */ - /* the `ta_xxxx_nonbase_uniranges' ranges must be strict subsets */ - /* of the corresponding `ta_xxxx_uniranges' ranges */ + /* the `af_xxxx_nonbase_uniranges' ranges must be strict subsets */ + /* of the corresponding `af_xxxx_uniranges' ranges */ const AF_Script_UniRangeRec af_adlm_uniranges[] = @@ -666,6 +666,21 @@ }; + const AF_Script_UniRangeRec af_sund_uniranges[] = + { + AF_UNIRANGE_REC( 0x1B80, 0x1BBF ), /* Sundanese */ + AF_UNIRANGE_REC( 0x1CC0, 0x1CCF ), /* Sundanese Supplement */ + AF_UNIRANGE_REC( 0, 0 ) + }; + + const AF_Script_UniRangeRec af_sund_nonbase_uniranges[] = + { + AF_UNIRANGE_REC( 0x1B80, 0x1B82 ), + AF_UNIRANGE_REC( 0x1BA1, 0x1BAD ), + AF_UNIRANGE_REC( 0, 0 ) + }; + + const AF_Script_UniRangeRec af_taml_uniranges[] = { AF_UNIRANGE_REC( 0x0B80, 0x0BFF ), /* Tamil */ @@ -776,21 +791,6 @@ }; - const AF_Script_UniRangeRec af_sund_uniranges[] = - { - AF_UNIRANGE_REC( 0x1B80, 0x1BBF ), /* Sundanese */ - AF_UNIRANGE_REC( 0x1CC0, 0x1CCF ), /* Sundanese Supplement */ - AF_UNIRANGE_REC( 0, 0 ) - }; - - const AF_Script_UniRangeRec af_sund_nonbase_uniranges[] = - { - AF_UNIRANGE_REC( 0x1B80, 0x1B82 ), - AF_UNIRANGE_REC( 0x1BA1, 0x1BAD ), - AF_UNIRANGE_REC( 0, 0 ) - }; - - const AF_Script_UniRangeRec af_sylo_uniranges[] = { AF_UNIRANGE_REC( 0xA800, 0xA82F ), /* Syloti Nagri */ diff --git a/src/autofit/afscript.h b/src/autofit/afscript.h index 63b67e6aa..239a9cf24 100644 --- a/src/autofit/afscript.h +++ b/src/autofit/afscript.h @@ -243,6 +243,13 @@ HINTING_BOTTOM_TO_TOP, "\xE0\xB6\xA7" ) /* ට */ + /* only digit zero has a simple (round) shape in the Sundanese script */ + SCRIPT( sund, SUND, + "Sundanese", + HB_SCRIPT_SUNDANESE, + HINTING_BOTTOM_TO_TOP, + "\xE1\xAE\xB0" ) /* ᮰ */ + /* only digit zero has a simple (round) shape in the Tamil script */ SCRIPT( taml, TAML, "Tamil", @@ -289,12 +296,6 @@ HINTING_BOTTOM_TO_TOP, "o" ) /* XXX */ - SCRIPT( sund, SUND, - "Sundanese", - HB_SCRIPT_SUNDANESE, - HINTING_BOTTOM_TO_TOP, - "o" ) /* XXX */ - SCRIPT( sylo, SYLO, "Syloti Nagri", HB_SCRIPT_SYLOTI_NAGRI, diff --git a/src/autofit/afstyles.h b/src/autofit/afstyles.h index fc73f15bd..257f46779 100644 --- a/src/autofit/afstyles.h +++ b/src/autofit/afstyles.h @@ -322,6 +322,13 @@ AF_BLUE_STRINGSET_SINH, AF_COVERAGE_DEFAULT ) + STYLE( sund_dflt, SUND_DFLT, + "Sundanese default style", + AF_WRITING_SYSTEM_LATIN, + AF_SCRIPT_SUND, + AF_BLUE_STRINGSET_SUND, + AF_COVERAGE_DEFAULT ) + STYLE( taml_dflt, TAML_DFLT, "Tamil default style", AF_WRITING_SYSTEM_LATIN, @@ -371,7 +378,6 @@ STYLE_DEFAULT_INDIC( limb, LIMB, "Limbu" ) STYLE_DEFAULT_INDIC( orya, ORYA, "Oriya" ) - STYLE_DEFAULT_INDIC( sund, SUND, "Sundanese" ) STYLE_DEFAULT_INDIC( sylo, SYLO, "Syloti Nagri" ) STYLE_DEFAULT_INDIC( tibt, TIBT, "Tibetan" ) |