OLD | NEW |
1 /* | 1 /* |
2 * Copyright © 2012 Google, Inc. | 2 * Copyright © 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 21 matching lines...) Expand all Loading... |
32 hb_unicode_funcs_t *funcs = hb_unicode_funcs_get_default (); | 32 hb_unicode_funcs_t *funcs = hb_unicode_funcs_get_default (); |
33 | 33 |
34 printf ("There are split matras without a Unicode decomposition:\n"); | 34 printf ("There are split matras without a Unicode decomposition:\n"); |
35 for (hb_codepoint_t u = 0; u < 0x110000; u++) | 35 for (hb_codepoint_t u = 0; u < 0x110000; u++) |
36 { | 36 { |
37 unsigned int type = get_indic_categories (u); | 37 unsigned int type = get_indic_categories (u); |
38 | 38 |
39 unsigned int category = type & 0x0F; | 39 unsigned int category = type & 0x0F; |
40 unsigned int position = type >> 4; | 40 unsigned int position = type >> 4; |
41 | 41 |
42 hb_codepoint_t a, b; | 42 hb_unicode_general_category_t cat = hb_unicode_general_category (funcs, u); |
43 if (!hb_unicode_decompose (funcs, u, &a, &b)) | 43 unsigned int ccc = hb_unicode_combining_class (funcs, u); |
44 printf ("U+%04X %x %x\n", u, category, position); | 44 if (category == OT_M && ccc) |
| 45 printf ("U+%04X %d\n", u, ccc); |
| 46 |
| 47 // hb_codepoint_t a, b; |
| 48 // if (!hb_unicode_decompose (funcs, u, &a, &b)) |
| 49 // printf ("U+%04X %x %x\n", u, category, position); |
45 } | 50 } |
46 } | 51 } |
OLD | NEW |