1 /***************************************************************************/
5 /* Auto-fitter Unicode script ranges (body). */
7 /* Copyright 2013, 2014 by */
8 /* David Turner, Robert Wilhelm, and Werner Lemberg. */
10 /* This file is part of the FreeType project, and may only be used, */
11 /* modified, and distributed under the terms of the FreeType project */
12 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */
13 /* this file you indicate that you have read the license and */
14 /* understand and accept it fully. */
16 /***************************************************************************/
22 const AF_Script_UniRangeRec af_cyrl_uniranges
[] =
24 AF_UNIRANGE_REC( 0x0400UL
, 0x04FFUL
), /* Cyrillic */
25 AF_UNIRANGE_REC( 0x0500UL
, 0x052FUL
), /* Cyrillic Supplement */
26 AF_UNIRANGE_REC( 0x2DE0UL
, 0x2DFFUL
), /* Cyrillic Extended-A */
27 AF_UNIRANGE_REC( 0xA640UL
, 0xA69FUL
), /* Cyrillic Extended-B */
28 AF_UNIRANGE_REC( 0UL, 0UL )
31 const AF_Script_UniRangeRec af_grek_uniranges
[] =
33 AF_UNIRANGE_REC( 0x0370UL
, 0x03FFUL
), /* Greek and Coptic */
34 AF_UNIRANGE_REC( 0x1F00UL
, 0x1FFFUL
), /* Greek Extended */
35 AF_UNIRANGE_REC( 0UL, 0UL )
38 const AF_Script_UniRangeRec af_hebr_uniranges
[] =
40 AF_UNIRANGE_REC( 0x0590UL
, 0x05FFUL
), /* Hebrew */
41 AF_UNIRANGE_REC( 0xFB1DUL
, 0xFB4FUL
), /* Alphab. Present. Forms (Hebrew) */
42 AF_UNIRANGE_REC( 0UL, 0UL )
45 const AF_Script_UniRangeRec af_latn_uniranges
[] =
47 AF_UNIRANGE_REC( 0x0020UL
, 0x007FUL
), /* Basic Latin (no control chars) */
48 AF_UNIRANGE_REC( 0x00A0UL
, 0x00FFUL
), /* Latin-1 Supplement (no control chars) */
49 AF_UNIRANGE_REC( 0x0100UL
, 0x017FUL
), /* Latin Extended-A */
50 AF_UNIRANGE_REC( 0x0180UL
, 0x024FUL
), /* Latin Extended-B */
51 AF_UNIRANGE_REC( 0x0250UL
, 0x02AFUL
), /* IPA Extensions */
52 AF_UNIRANGE_REC( 0x02B0UL
, 0x02FFUL
), /* Spacing Modifier Letters */
53 AF_UNIRANGE_REC( 0x0300UL
, 0x036FUL
), /* Combining Diacritical Marks */
54 AF_UNIRANGE_REC( 0x1D00UL
, 0x1D7FUL
), /* Phonetic Extensions */
55 AF_UNIRANGE_REC( 0x1D80UL
, 0x1DBFUL
), /* Phonetic Extensions Supplement */
56 AF_UNIRANGE_REC( 0x1DC0UL
, 0x1DFFUL
), /* Combining Diacritical Marks Supplement */
57 AF_UNIRANGE_REC( 0x1E00UL
, 0x1EFFUL
), /* Latin Extended Additional */
58 AF_UNIRANGE_REC( 0x2000UL
, 0x206FUL
), /* General Punctuation */
59 AF_UNIRANGE_REC( 0x2070UL
, 0x209FUL
), /* Superscripts and Subscripts */
60 AF_UNIRANGE_REC( 0x20A0UL
, 0x20CFUL
), /* Currency Symbols */
61 AF_UNIRANGE_REC( 0x2150UL
, 0x218FUL
), /* Number Forms */
62 AF_UNIRANGE_REC( 0x2460UL
, 0x24FFUL
), /* Enclosed Alphanumerics */
63 AF_UNIRANGE_REC( 0x2C60UL
, 0x2C7FUL
), /* Latin Extended-C */
64 AF_UNIRANGE_REC( 0x2E00UL
, 0x2E7FUL
), /* Supplemental Punctuation */
65 AF_UNIRANGE_REC( 0xA720UL
, 0xA7FFUL
), /* Latin Extended-D */
66 AF_UNIRANGE_REC( 0xFB00UL
, 0xFB06UL
), /* Alphab. Present. Forms (Latin Ligs) */
67 AF_UNIRANGE_REC( 0x1D400UL
, 0x1D7FFUL
), /* Mathematical Alphanumeric Symbols */
68 AF_UNIRANGE_REC( 0x1F100UL
, 0x1F1FFUL
), /* Enclosed Alphanumeric Supplement */
69 AF_UNIRANGE_REC( 0UL, 0UL )
72 const AF_Script_UniRangeRec af_none_uniranges
[] =
74 AF_UNIRANGE_REC( 0UL, 0UL )
77 #ifdef AF_CONFIG_OPTION_INDIC
79 const AF_Script_UniRangeRec af_beng_uniranges
[] =
81 AF_UNIRANGE_REC( 0x0980UL
, 0x09FFUL
), /* Bengali */
82 AF_UNIRANGE_REC( 0UL, 0UL )
85 const AF_Script_UniRangeRec af_deva_uniranges
[] =
87 AF_UNIRANGE_REC( 0x0900UL
, 0x097FUL
), /* Devanagari */
88 AF_UNIRANGE_REC( 0UL, 0UL )
91 const AF_Script_UniRangeRec af_gujr_uniranges
[] =
93 AF_UNIRANGE_REC( 0x0A80UL
, 0x0AFFUL
), /* Gujarati */
94 AF_UNIRANGE_REC( 0UL, 0UL )
97 const AF_Script_UniRangeRec af_guru_uniranges
[] =
99 AF_UNIRANGE_REC( 0x0A00UL
, 0x0A7FUL
), /* Gurmukhi */
100 AF_UNIRANGE_REC( 0UL, 0UL )
103 const AF_Script_UniRangeRec af_knda_uniranges
[] =
105 AF_UNIRANGE_REC( 0x0C80UL
, 0x0CFFUL
), /* Kannada */
106 AF_UNIRANGE_REC( 0UL, 0UL )
109 const AF_Script_UniRangeRec af_limb_uniranges
[] =
111 AF_UNIRANGE_REC( 0x1900UL
, 0x194FUL
), /* Limbu */
112 AF_UNIRANGE_REC( 0UL, 0UL )
115 const AF_Script_UniRangeRec af_mlym_uniranges
[] =
117 AF_UNIRANGE_REC( 0x0D00UL
, 0x0D7FUL
), /* Malayalam */
118 AF_UNIRANGE_REC( 0UL, 0UL )
121 const AF_Script_UniRangeRec af_orya_uniranges
[] =
123 AF_UNIRANGE_REC( 0x0B00UL
, 0x0B7FUL
), /* Oriya */
124 AF_UNIRANGE_REC( 0UL, 0UL )
127 const AF_Script_UniRangeRec af_sinh_uniranges
[] =
129 AF_UNIRANGE_REC( 0x0D80UL
, 0x0DFFUL
), /* Sinhala */
130 AF_UNIRANGE_REC( 0UL, 0UL )
133 const AF_Script_UniRangeRec af_sund_uniranges
[] =
135 AF_UNIRANGE_REC( 0x1B80UL
, 0x1BBFUL
), /* Sundanese */
136 AF_UNIRANGE_REC( 0UL, 0UL )
139 const AF_Script_UniRangeRec af_sylo_uniranges
[] =
141 AF_UNIRANGE_REC( 0xA800UL
, 0xA82FUL
), /* Syloti Nagri */
142 AF_UNIRANGE_REC( 0UL, 0UL )
145 const AF_Script_UniRangeRec af_taml_uniranges
[] =
147 AF_UNIRANGE_REC( 0x0B80UL
, 0x0BFFUL
), /* Tamil */
148 AF_UNIRANGE_REC( 0UL, 0UL )
151 const AF_Script_UniRangeRec af_telu_uniranges
[] =
153 AF_UNIRANGE_REC( 0x0C00UL
, 0x0C7FUL
), /* Telugu */
154 AF_UNIRANGE_REC( 0UL, 0UL )
157 const AF_Script_UniRangeRec af_tibt_uniranges
[] =
159 AF_UNIRANGE_REC( 0x0F00UL
, 0x0FFFUL
), /* Tibetan */
160 AF_UNIRANGE_REC( 0UL, 0UL )
163 #endif /* !AF_CONFIG_OPTION_INDIC */
165 #ifdef AF_CONFIG_OPTION_CJK
167 /* this corresponds to Unicode 6.0 */
169 const AF_Script_UniRangeRec af_hani_uniranges
[] =
171 AF_UNIRANGE_REC( 0x1100UL
, 0x11FFUL
), /* Hangul Jamo */
172 AF_UNIRANGE_REC( 0x2E80UL
, 0x2EFFUL
), /* CJK Radicals Supplement */
173 AF_UNIRANGE_REC( 0x2F00UL
, 0x2FDFUL
), /* Kangxi Radicals */
174 AF_UNIRANGE_REC( 0x2FF0UL
, 0x2FFFUL
), /* Ideographic Description Characters */
175 AF_UNIRANGE_REC( 0x3000UL
, 0x303FUL
), /* CJK Symbols and Punctuation */
176 AF_UNIRANGE_REC( 0x3040UL
, 0x309FUL
), /* Hiragana */
177 AF_UNIRANGE_REC( 0x30A0UL
, 0x30FFUL
), /* Katakana */
178 AF_UNIRANGE_REC( 0x3100UL
, 0x312FUL
), /* Bopomofo */
179 AF_UNIRANGE_REC( 0x3130UL
, 0x318FUL
), /* Hangul Compatibility Jamo */
180 AF_UNIRANGE_REC( 0x3190UL
, 0x319FUL
), /* Kanbun */
181 AF_UNIRANGE_REC( 0x31A0UL
, 0x31BFUL
), /* Bopomofo Extended */
182 AF_UNIRANGE_REC( 0x31C0UL
, 0x31EFUL
), /* CJK Strokes */
183 AF_UNIRANGE_REC( 0x31F0UL
, 0x31FFUL
), /* Katakana Phonetic Extensions */
184 AF_UNIRANGE_REC( 0x3200UL
, 0x32FFUL
), /* Enclosed CJK Letters and Months */
185 AF_UNIRANGE_REC( 0x3300UL
, 0x33FFUL
), /* CJK Compatibility */
186 AF_UNIRANGE_REC( 0x3400UL
, 0x4DBFUL
), /* CJK Unified Ideographs Extension A */
187 AF_UNIRANGE_REC( 0x4DC0UL
, 0x4DFFUL
), /* Yijing Hexagram Symbols */
188 AF_UNIRANGE_REC( 0x4E00UL
, 0x9FFFUL
), /* CJK Unified Ideographs */
189 AF_UNIRANGE_REC( 0xA960UL
, 0xA97FUL
), /* Hangul Jamo Extended-A */
190 AF_UNIRANGE_REC( 0xAC00UL
, 0xD7AFUL
), /* Hangul Syllables */
191 AF_UNIRANGE_REC( 0xD7B0UL
, 0xD7FFUL
), /* Hangul Jamo Extended-B */
192 AF_UNIRANGE_REC( 0xF900UL
, 0xFAFFUL
), /* CJK Compatibility Ideographs */
193 AF_UNIRANGE_REC( 0xFE10UL
, 0xFE1FUL
), /* Vertical forms */
194 AF_UNIRANGE_REC( 0xFE30UL
, 0xFE4FUL
), /* CJK Compatibility Forms */
195 AF_UNIRANGE_REC( 0xFF00UL
, 0xFFEFUL
), /* Halfwidth and Fullwidth Forms */
196 AF_UNIRANGE_REC( 0x1B000UL
, 0x1B0FFUL
), /* Kana Supplement */
197 AF_UNIRANGE_REC( 0x1D300UL
, 0x1D35FUL
), /* Tai Xuan Hing Symbols */
198 AF_UNIRANGE_REC( 0x1F200UL
, 0x1F2FFUL
), /* Enclosed Ideographic Supplement */
199 AF_UNIRANGE_REC( 0x20000UL
, 0x2A6DFUL
), /* CJK Unified Ideographs Extension B */
200 AF_UNIRANGE_REC( 0x2A700UL
, 0x2B73FUL
), /* CJK Unified Ideographs Extension C */
201 AF_UNIRANGE_REC( 0x2B740UL
, 0x2B81FUL
), /* CJK Unified Ideographs Extension D */
202 AF_UNIRANGE_REC( 0x2F800UL
, 0x2FA1FUL
), /* CJK Compatibility Ideographs Supplement */
203 AF_UNIRANGE_REC( 0UL, 0UL )
206 #endif /* !AF_CONFIG_OPTION_CJK */