summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSascha Brawer <sascha@google.com>2017-04-06 07:06:32 +0200
committerWerner Lemberg <wl@gnu.org>2017-04-06 07:06:32 +0200
commit134246b72b605b638c1bcd030d85b76a2ed2bac8 (patch)
tree275e71b2ecd469f3387b99cc31c72302b858d79b /src
parentba9cee479a1af5aaebce3d940fcbb8c5a3f9a833 (diff)
downloadfreetype2-134246b72b605b638c1bcd030d85b76a2ed2bac8.tar.gz
[autofit] Add support for N'Ko script.
* src/autofit/afblue.dat: Add blue zone data for N'Ko. * src/autofit/afblue.c, src/autofit/afblue.h: Regenerated. * src/autofit/afscript.h: Add N'Ko standard characters. * src/autofit/afranges.c, src/autofit/afstyles.h: Add N'Ko data.
Diffstat (limited to 'src')
-rw-r--r--src/autofit/afblue.c14
-rw-r--r--src/autofit/afblue.dat17
-rw-r--r--src/autofit/afblue.h51
-rw-r--r--src/autofit/afranges.c51
-rw-r--r--src/autofit/afscript.h6
-rw-r--r--src/autofit/afstyles.h7
6 files changed, 104 insertions, 42 deletions
diff --git a/src/autofit/afblue.c b/src/autofit/afblue.c
index 6e434e95d..d49767a3f 100644
--- a/src/autofit/afblue.c
+++ b/src/autofit/afblue.c
@@ -214,6 +214,14 @@
'\0',
'\xE1', '\x80', '\x89', ' ', '\xE1', '\x80', '\x8A', ' ', '\xE1', '\x80', '\xA5', ' ', '\xE1', '\x80', '\xA9', ' ', '\xE1', '\x80', '\xA8', ' ', '\xE1', '\x81', '\x82', ' ', '\xE1', '\x81', '\x85', ' ', '\xE1', '\x81', '\x89', /* ဉ ည ဥ ဩ ဨ ၂ ၅ ၉ */
'\0',
+ '\xDF', '\x90', ' ', '\xDF', '\x89', ' ', '\xDF', '\x92', ' ', '\xDF', '\x9F', ' ', '\xDF', '\x96', ' ', '\xDF', '\x9C', ' ', '\xDF', '\xA0', ' ', '\xDF', '\xA5', /* ߐ ߉ ߒ ߟ ߖ ߜ ߠ ߥ */
+ '\0',
+ '\xDF', '\x80', ' ', '\xDF', '\x98', ' ', '\xDF', '\xA1', ' ', '\xDF', '\xA0', ' ', '\xDF', '\xA5', /* ߀ ߘ ߡ ߠ ߥ */
+ '\0',
+ '\xDF', '\x8F', ' ', '\xDF', '\x9B', ' ', '\xDF', '\x8B', /* ߏ ߛ ߋ */
+ '\0',
+ '\xDF', '\x8E', ' ', '\xDF', '\x8F', ' ', '\xDF', '\x9B', ' ', '\xDF', '\x8B', /* ߎ ߏ ߛ ߋ */
+ '\0',
'\xE1', '\xB1', '\x9B', ' ', '\xE1', '\xB1', '\x9C', ' ', '\xE1', '\xB1', '\x9D', ' ', '\xE1', '\xB1', '\xA1', ' ', '\xE1', '\xB1', '\xA2', ' ', '\xE1', '\xB1', '\xA5', /* ᱛ ᱜ ᱝ ᱡ ᱢ ᱥ */
'\0',
'\xE0', '\xB6', '\x89', ' ', '\xE0', '\xB6', '\x9A', ' ', '\xE0', '\xB6', '\x9D', ' ', '\xE0', '\xB6', '\xB3', ' ', '\xE0', '\xB6', '\xB4', ' ', '\xE0', '\xB6', '\xBA', ' ', '\xE0', '\xB6', '\xBD', ' ', '\xE0', '\xB7', '\x86', /* ඉ ක ඝ ඳ ප ය ල ෆ */
@@ -440,6 +448,12 @@
{ AF_BLUE_STRING_MYANMAR_ASCENDER, AF_BLUE_PROPERTY_LATIN_TOP },
{ AF_BLUE_STRING_MYANMAR_DESCENDER, 0 },
{ AF_BLUE_STRING_MAX, 0 },
+ { AF_BLUE_STRING_NKO_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
+ { AF_BLUE_STRING_NKO_BOTTOM, 0 },
+ { AF_BLUE_STRING_NKO_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
+ AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
+ { AF_BLUE_STRING_NKO_SMALL_BOTTOM, 0 },
+ { AF_BLUE_STRING_MAX, 0 },
{ AF_BLUE_STRING_MAX, 0 },
{ AF_BLUE_STRING_OL_CHIKI, AF_BLUE_PROPERTY_LATIN_TOP },
{ AF_BLUE_STRING_OL_CHIKI, 0 },
diff --git a/src/autofit/afblue.dat b/src/autofit/afblue.dat
index 7b5c08425..6d8680948 100644
--- a/src/autofit/afblue.dat
+++ b/src/autofit/afblue.dat
@@ -297,6 +297,15 @@ AF_BLUE_STRING_ENUM AF_BLUE_STRINGS_ARRAY AF_BLUE_STRING_MAX_LEN:
AF_BLUE_STRING_MYANMAR_DESCENDER
"ဉ ည ဥ ဩ ဨ ၂ ၅ ၉"
+ AF_BLUE_STRING_NKO_TOP
+ "ߐ ߉ ߒ ߟ ߖ ߜ ߠ ߥ"
+ AF_BLUE_STRING_NKO_BOTTOM
+ "߀ ߘ ߡ ߠ ߥ"
+ AF_BLUE_STRING_NKO_SMALL_TOP
+ "ߏ ߛ ߋ"
+ AF_BLUE_STRING_NKO_SMALL_BOTTOM
+ "ߎ ߏ ߛ ߋ"
+
AF_BLUE_STRING_OL_CHIKI
"ᱛ ᱜ ᱝ ᱡ ᱢ ᱥ"
@@ -691,6 +700,14 @@ AF_BLUE_STRINGSET_ENUM AF_BLUE_STRINGSETS_ARRAY AF_BLUE_STRINGSET_MAX_LEN:
{ AF_BLUE_STRING_MYANMAR_DESCENDER, 0 }
{ AF_BLUE_STRING_MAX, 0 }
+ AF_BLUE_STRINGSET_NKOO
+ { AF_BLUE_STRING_NKO_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
+ { AF_BLUE_STRING_NKO_BOTTOM, 0 }
+ { AF_BLUE_STRING_NKO_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
+ AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
+ { AF_BLUE_STRING_NKO_SMALL_BOTTOM, 0 }
+ { AF_BLUE_STRING_MAX, 0 }
+
AF_BLUE_STRINGSET_NONE
{ AF_BLUE_STRING_MAX, 0 }
diff --git a/src/autofit/afblue.h b/src/autofit/afblue.h
index e290c47f4..9fd349824 100644
--- a/src/autofit/afblue.h
+++ b/src/autofit/afblue.h
@@ -171,22 +171,26 @@ FT_BEGIN_HEADER
AF_BLUE_STRING_MYANMAR_BOTTOM = 2391,
AF_BLUE_STRING_MYANMAR_ASCENDER = 2423,
AF_BLUE_STRING_MYANMAR_DESCENDER = 2451,
- AF_BLUE_STRING_OL_CHIKI = 2483,
- AF_BLUE_STRING_SINHALA_TOP = 2507,
- AF_BLUE_STRING_SINHALA_BOTTOM = 2539,
- AF_BLUE_STRING_SINHALA_DESCENDER = 2571,
- AF_BLUE_STRING_TAMIL_TOP = 2615,
- AF_BLUE_STRING_TAMIL_BOTTOM = 2647,
- AF_BLUE_STRING_TELUGU_TOP = 2679,
- AF_BLUE_STRING_TELUGU_BOTTOM = 2707,
- AF_BLUE_STRING_THAI_TOP = 2735,
- AF_BLUE_STRING_THAI_BOTTOM = 2759,
- AF_BLUE_STRING_THAI_ASCENDER = 2787,
- AF_BLUE_STRING_THAI_LARGE_ASCENDER = 2799,
- AF_BLUE_STRING_THAI_DESCENDER = 2811,
- AF_BLUE_STRING_THAI_LARGE_DESCENDER = 2827,
- AF_BLUE_STRING_THAI_DIGIT_TOP = 2835,
- af_blue_1_1 = 2846,
+ AF_BLUE_STRING_NKO_TOP = 2483,
+ AF_BLUE_STRING_NKO_BOTTOM = 2507,
+ AF_BLUE_STRING_NKO_SMALL_TOP = 2522,
+ AF_BLUE_STRING_NKO_SMALL_BOTTOM = 2531,
+ AF_BLUE_STRING_OL_CHIKI = 2543,
+ AF_BLUE_STRING_SINHALA_TOP = 2567,
+ AF_BLUE_STRING_SINHALA_BOTTOM = 2599,
+ AF_BLUE_STRING_SINHALA_DESCENDER = 2631,
+ AF_BLUE_STRING_TAMIL_TOP = 2675,
+ AF_BLUE_STRING_TAMIL_BOTTOM = 2707,
+ AF_BLUE_STRING_TELUGU_TOP = 2739,
+ AF_BLUE_STRING_TELUGU_BOTTOM = 2767,
+ AF_BLUE_STRING_THAI_TOP = 2795,
+ AF_BLUE_STRING_THAI_BOTTOM = 2819,
+ AF_BLUE_STRING_THAI_ASCENDER = 2847,
+ AF_BLUE_STRING_THAI_LARGE_ASCENDER = 2859,
+ AF_BLUE_STRING_THAI_DESCENDER = 2871,
+ AF_BLUE_STRING_THAI_LARGE_DESCENDER = 2887,
+ AF_BLUE_STRING_THAI_DIGIT_TOP = 2895,
+ af_blue_1_1 = 2906,
#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,
@@ -268,13 +272,14 @@ FT_BEGIN_HEADER
AF_BLUE_STRINGSET_LATP = 110,
AF_BLUE_STRINGSET_MLYM = 117,
AF_BLUE_STRINGSET_MYMR = 120,
- AF_BLUE_STRINGSET_NONE = 125,
- AF_BLUE_STRINGSET_OLCK = 126,
- AF_BLUE_STRINGSET_SINH = 129,
- AF_BLUE_STRINGSET_TAML = 133,
- AF_BLUE_STRINGSET_TELU = 136,
- AF_BLUE_STRINGSET_THAI = 139,
- af_blue_2_1 = 147,
+ AF_BLUE_STRINGSET_NKOO = 125,
+ AF_BLUE_STRINGSET_NONE = 130,
+ AF_BLUE_STRINGSET_OLCK = 131,
+ AF_BLUE_STRINGSET_SINH = 134,
+ AF_BLUE_STRINGSET_TAML = 138,
+ AF_BLUE_STRINGSET_TELU = 141,
+ AF_BLUE_STRINGSET_THAI = 144,
+ af_blue_2_1 = 152,
#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/afranges.c b/src/autofit/afranges.c
index dceab9a8d..57236cf8d 100644
--- a/src/autofit/afranges.c
+++ b/src/autofit/afranges.c
@@ -493,27 +493,40 @@
const AF_Script_UniRangeRec af_mymr_uniranges[] =
{
- AF_UNIRANGE_REC( 0x1000, 0x109F ), /* Myanmar */
- AF_UNIRANGE_REC( 0xA9E0, 0xA9FF ), /* Myanmar Extended-B */
- AF_UNIRANGE_REC( 0xAA60, 0xAA7F ), /* Myanmar Extended-A */
- AF_UNIRANGE_REC( 0, 0 )
+ AF_UNIRANGE_REC( 0x1000, 0x109F ), /* Myanmar */
+ AF_UNIRANGE_REC( 0xA9E0, 0xA9FF ), /* Myanmar Extended-B */
+ AF_UNIRANGE_REC( 0xAA60, 0xAA7F ), /* Myanmar Extended-A */
+ AF_UNIRANGE_REC( 0, 0 )
};
const AF_Script_UniRangeRec af_mymr_nonbase_uniranges[] =
{
- AF_UNIRANGE_REC( 0x102D, 0x1030 ),
- AF_UNIRANGE_REC( 0x1032, 0x1037 ),
- AF_UNIRANGE_REC( 0x103A, 0x103A ),
- AF_UNIRANGE_REC( 0x103D, 0x103E ),
- AF_UNIRANGE_REC( 0x1058, 0x1059 ),
- AF_UNIRANGE_REC( 0x105E, 0x1060 ),
- AF_UNIRANGE_REC( 0x1071, 0x1074 ),
- AF_UNIRANGE_REC( 0x1082, 0x1082 ),
- AF_UNIRANGE_REC( 0x1085, 0x1086 ),
- AF_UNIRANGE_REC( 0x108D, 0x108D ),
- AF_UNIRANGE_REC( 0xA9E5, 0xA9E5 ),
- AF_UNIRANGE_REC( 0xAA7C, 0xAA7C ),
- AF_UNIRANGE_REC( 0, 0 )
+ AF_UNIRANGE_REC( 0x102D, 0x1030 ),
+ AF_UNIRANGE_REC( 0x1032, 0x1037 ),
+ AF_UNIRANGE_REC( 0x103A, 0x103A ),
+ AF_UNIRANGE_REC( 0x103D, 0x103E ),
+ AF_UNIRANGE_REC( 0x1058, 0x1059 ),
+ AF_UNIRANGE_REC( 0x105E, 0x1060 ),
+ AF_UNIRANGE_REC( 0x1071, 0x1074 ),
+ AF_UNIRANGE_REC( 0x1082, 0x1082 ),
+ AF_UNIRANGE_REC( 0x1085, 0x1086 ),
+ AF_UNIRANGE_REC( 0x108D, 0x108D ),
+ AF_UNIRANGE_REC( 0xA9E5, 0xA9E5 ),
+ AF_UNIRANGE_REC( 0xAA7C, 0xAA7C ),
+ AF_UNIRANGE_REC( 0, 0 )
+ };
+
+
+ const AF_Script_UniRangeRec af_nkoo_uniranges[] =
+ {
+ AF_UNIRANGE_REC( 0x07C0, 0x07FF ), /* N'Ko */
+ AF_UNIRANGE_REC( 0, 0 )
+ };
+
+ const AF_Script_UniRangeRec af_nkoo_nonbase_uniranges[] =
+ {
+ AF_UNIRANGE_REC( 0x07EB, 0x07F5 ),
+ AF_UNIRANGE_REC( 0, 0 )
};
@@ -530,8 +543,8 @@
const AF_Script_UniRangeRec af_olck_uniranges[] =
{
- AF_UNIRANGE_REC( 0x1C50, 0x1C7F ), /* Ol Chiki */
- AF_UNIRANGE_REC( 0, 0 )
+ AF_UNIRANGE_REC( 0x1C50, 0x1C7F ), /* Ol Chiki */
+ AF_UNIRANGE_REC( 0, 0 )
};
const AF_Script_UniRangeRec af_olck_nonbase_uniranges[] =
diff --git a/src/autofit/afscript.h b/src/autofit/afscript.h
index 154a7e882..e90ce826c 100644
--- a/src/autofit/afscript.h
+++ b/src/autofit/afscript.h
@@ -171,6 +171,12 @@
HINTING_BOTTOM_TO_TOP,
"\xE1\x80\x9D \xE1\x80\x84 \xE1\x80\x82" ) /* ဝ င ဂ */
+ SCRIPT( nkoo, NKOO,
+ "N'Ko",
+ HB_SCRIPT_NKO,
+ HINTING_BOTTOM_TO_TOP,
+ "\xDF\x8B \xDF\x80" ) /* ߋ ߀ */
+
SCRIPT( none, NONE,
"no script",
HB_SCRIPT_INVALID,
diff --git a/src/autofit/afstyles.h b/src/autofit/afstyles.h
index cf283d976..beb0152b6 100644
--- a/src/autofit/afstyles.h
+++ b/src/autofit/afstyles.h
@@ -238,6 +238,13 @@
AF_BLUE_STRINGSET_MYMR,
AF_COVERAGE_DEFAULT )
+ STYLE( nkoo_dflt, NKOO_DFLT,
+ "N'Ko default style",
+ AF_WRITING_SYSTEM_LATIN,
+ AF_SCRIPT_NKOO,
+ AF_BLUE_STRINGSET_NKOO,
+ AF_COVERAGE_DEFAULT )
+
STYLE( none_dflt, NONE_DFLT,
"no style",
AF_WRITING_SYSTEM_DUMMY,