OLD | NEW |
1 /* | 1 /* |
2 * Copyright © 2010,2011,2012 Google, Inc. | 2 * Copyright © 2010,2011,2012 Google, Inc. |
3 * | 3 * |
4 * This is part of HarfBuzz, a text shaping library. | 4 * This is part of HarfBuzz, a text shaping library. |
5 * | 5 * |
6 * Permission is hereby granted, without written agreement and without | 6 * Permission is hereby granted, without written agreement and without |
7 * license or royalty fees, to use, copy, modify, and distribute this | 7 * license or royalty fees, to use, copy, modify, and distribute this |
8 * software and its documentation for any purpose, provided that the | 8 * software and its documentation for any purpose, provided that the |
9 * above copyright notice and the following two paragraphs appear in | 9 * above copyright notice and the following two paragraphs appear in |
10 * all copies of this software. | 10 * all copies of this software. |
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
154 hb_ot_shape_complex_categorize (const hb_ot_shape_planner_t *planner) | 154 hb_ot_shape_complex_categorize (const hb_ot_shape_planner_t *planner) |
155 { | 155 { |
156 switch ((hb_tag_t) planner->props.script) | 156 switch ((hb_tag_t) planner->props.script) |
157 { | 157 { |
158 default: | 158 default: |
159 return &_hb_ot_complex_shaper_default; | 159 return &_hb_ot_complex_shaper_default; |
160 | 160 |
161 | 161 |
162 /* Unicode-1.1 additions */ | 162 /* Unicode-1.1 additions */ |
163 case HB_SCRIPT_ARABIC: | 163 case HB_SCRIPT_ARABIC: |
| 164 |
| 165 /* Unicode-3.0 additions */ |
164 case HB_SCRIPT_MONGOLIAN: | 166 case HB_SCRIPT_MONGOLIAN: |
165 case HB_SCRIPT_SYRIAC: | 167 case HB_SCRIPT_SYRIAC: |
166 | 168 |
167 /* Unicode-5.0 additions */ | 169 /* Unicode-5.0 additions */ |
168 case HB_SCRIPT_NKO: | 170 case HB_SCRIPT_NKO: |
169 case HB_SCRIPT_PHAGS_PA: | 171 case HB_SCRIPT_PHAGS_PA: |
170 | 172 |
171 /* Unicode-6.0 additions */ | 173 /* Unicode-6.0 additions */ |
172 case HB_SCRIPT_MANDAIC: | 174 case HB_SCRIPT_MANDAIC: |
173 | 175 |
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
270 case HB_SCRIPT_GURMUKHI: | 272 case HB_SCRIPT_GURMUKHI: |
271 case HB_SCRIPT_KANNADA: | 273 case HB_SCRIPT_KANNADA: |
272 case HB_SCRIPT_MALAYALAM: | 274 case HB_SCRIPT_MALAYALAM: |
273 case HB_SCRIPT_ORIYA: | 275 case HB_SCRIPT_ORIYA: |
274 case HB_SCRIPT_TAMIL: | 276 case HB_SCRIPT_TAMIL: |
275 case HB_SCRIPT_TELUGU: | 277 case HB_SCRIPT_TELUGU: |
276 | 278 |
277 /* Unicode-3.0 additions */ | 279 /* Unicode-3.0 additions */ |
278 case HB_SCRIPT_SINHALA: | 280 case HB_SCRIPT_SINHALA: |
279 | 281 |
280 /* Unicode-4.1 additions */ | |
281 case HB_SCRIPT_BUGINESE: | |
282 | |
283 /* Unicode-5.0 additions */ | 282 /* Unicode-5.0 additions */ |
284 case HB_SCRIPT_BALINESE: | 283 case HB_SCRIPT_BALINESE: |
285 | 284 |
286 /* Unicode-5.1 additions */ | 285 /* Unicode-5.1 additions */ |
287 case HB_SCRIPT_LEPCHA: | 286 case HB_SCRIPT_LEPCHA: |
288 case HB_SCRIPT_REJANG: | 287 case HB_SCRIPT_REJANG: |
289 case HB_SCRIPT_SUNDANESE: | 288 case HB_SCRIPT_SUNDANESE: |
290 | 289 |
291 /* Unicode-5.2 additions */ | 290 /* Unicode-5.2 additions */ |
292 case HB_SCRIPT_JAVANESE: | 291 case HB_SCRIPT_JAVANESE: |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
327 | 326 |
328 case HB_SCRIPT_MYANMAR: | 327 case HB_SCRIPT_MYANMAR: |
329 /* For Myanmar, we only want to use the Myanmar shaper if the "new" script | 328 /* For Myanmar, we only want to use the Myanmar shaper if the "new" script |
330 * tag is found. For "old" script tag we want to use the default shaper.
*/ | 329 * tag is found. For "old" script tag we want to use the default shaper.
*/ |
331 if (planner->map.chosen_script[0] == HB_TAG ('m','y','m','2')) | 330 if (planner->map.chosen_script[0] == HB_TAG ('m','y','m','2')) |
332 return &_hb_ot_complex_shaper_myanmar; | 331 return &_hb_ot_complex_shaper_myanmar; |
333 else | 332 else |
334 return &_hb_ot_complex_shaper_default; | 333 return &_hb_ot_complex_shaper_default; |
335 | 334 |
336 /* Unicode-4.1 additions */ | 335 /* Unicode-4.1 additions */ |
| 336 case HB_SCRIPT_BUGINESE: |
337 case HB_SCRIPT_NEW_TAI_LUE: | 337 case HB_SCRIPT_NEW_TAI_LUE: |
338 | 338 |
339 /* Unicode-5.1 additions */ | 339 /* Unicode-5.1 additions */ |
340 case HB_SCRIPT_CHAM: | 340 case HB_SCRIPT_CHAM: |
341 | 341 |
342 /* Unicode-5.2 additions */ | 342 /* Unicode-5.2 additions */ |
343 case HB_SCRIPT_TAI_THAM: | 343 case HB_SCRIPT_TAI_THAM: |
344 | 344 |
345 /* If the designer designed the font for the 'DFLT' script, | 345 /* If the designer designed the font for the 'DFLT' script, |
346 * use the default shaper. Otherwise, use the Indic shaper. | 346 * use the default shaper. Otherwise, use the Indic shaper. |
347 * Note that for some simple scripts, there may not be *any* | 347 * Note that for some simple scripts, there may not be *any* |
348 * GSUB/GPOS needed, so there may be no scripts found! */ | 348 * GSUB/GPOS needed, so there may be no scripts found! */ |
349 if (planner->map.chosen_script[0] == HB_TAG ('D','F','L','T')) | 349 if (planner->map.chosen_script[0] == HB_TAG ('D','F','L','T')) |
350 return &_hb_ot_complex_shaper_default; | 350 return &_hb_ot_complex_shaper_default; |
351 else | 351 else |
352 return &_hb_ot_complex_shaper_sea; | 352 return &_hb_ot_complex_shaper_sea; |
353 } | 353 } |
354 } | 354 } |
355 | 355 |
356 | 356 |
357 #endif /* HB_OT_SHAPE_COMPLEX_PRIVATE_HH */ | 357 #endif /* HB_OT_SHAPE_COMPLEX_PRIVATE_HH */ |
OLD | NEW |