ref: 0483fb386180b7108dd6c0e61e2c0560bce4d592
parent: 14ae17a25f787c966fa9e532499c93461181b81b
author: Sascha Brawer <[email protected]>
date: Wed May 3 16:16:24 EDT 2017
[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.
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,25 @@
2017-05-03 Sascha Brawer <[email protected]>
+ Werner Lemberg <[email protected]>
+
+ [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.
+
+2017-05-03 Sascha Brawer <[email protected]>
Werner Lemberg <[email protected]
[autofit] Add support for Avestan script.
--- 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 },
--- a/src/autofit/afblue.dat
+++ b/src/autofit/afblue.dat
@@ -376,6 +376,13 @@
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
@@ -843,6 +850,12 @@
{ AF_BLUE_STRING_SINHALA_BOTTOM, 0 }
{ 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 }
--- a/src/autofit/afblue.h
+++ b/src/autofit/afblue.h
@@ -205,21 +205,24 @@
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 @@
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,
--- 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;
--- 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 */
@@ -772,21 +787,6 @@
AF_UNIRANGE_REC( 0x0B41, 0x0B44 ),
AF_UNIRANGE_REC( 0x0B4D, 0x0B56 ),
AF_UNIRANGE_REC( 0x0B62, 0x0B63 ),
- AF_UNIRANGE_REC( 0, 0 )
- };
-
-
- 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 )
};
--- 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",
@@ -286,12 +293,6 @@
SCRIPT( orya, ORYA,
"Oriya",
HB_SCRIPT_ORIYA,
- HINTING_BOTTOM_TO_TOP,
- "o" ) /* XXX */
-
- SCRIPT( sund, SUND,
- "Sundanese",
- HB_SCRIPT_SUNDANESE,
HINTING_BOTTOM_TO_TOP,
"o" ) /* XXX */
--- 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" )