Synchronize with FreeType (1/2).
[ttfautohint.git] / lib / ttfautohint-scripts.h
blob151fbd218792d3e4f7d03fd0aeee7c724861273c
1 /* ttfautohint-scripts.h */
3 /*
4 * Copyright (C) 2013-2016 by Werner Lemberg.
6 * This file is part of the ttfautohint library, and may only be used,
7 * modified, and distributed under the terms given in `COPYING'. By
8 * continuing to use, modify, or distribute this file you indicate that you
9 * have read `COPYING' and understand and accept it fully.
11 * The file `COPYING' mentioned in the previous paragraph is distributed
12 * with the ttfautohint library.
16 /* originally file `afscript.h' (2013-Aug-05) from FreeType */
19 /* The following part can be included multiple times. */
20 /* Define `SCRIPT' as needed. */
24 * Add new scripts here. The first and second arguments are the
25 * script name in lowercase and uppercase, respectively, followed
26 * by a description string. Then comes the corresponding HarfBuzz
27 * script name tag, followed by the default characters (to derive
28 * the standard width of stems).
30 * Note that fallback scripts only have a default style, thus we
31 * use `HB_SCRIPT_INVALID' as the HarfBuzz script name tag for
32 * them.
35 SCRIPT(arab, ARAB,
36 "Arabic",
37 HB_SCRIPT_ARABIC,
38 HINTING_BOTTOM_TO_TOP,
39 "\xD9\x84 \xD8\xAD \xD9\x80") /* ل ح ـ */
41 /* there are no simple forms for letters; we thus use two digit shapes */
42 SCRIPT(beng, BENG,
43 "Bengali",
44 HB_SCRIPT_BENGALI,
45 HINTING_TOP_TO_BOTTOM,
46 "\xE0\xA7\xA6 \xE0\xA7\xAA") /* ০ ৪*/
48 SCRIPT(cyrl, CYRL,
49 "Cyrillic",
50 HB_SCRIPT_CYRILLIC,
51 HINTING_BOTTOM_TO_TOP,
52 "\xD0\xBE \xD0\x9E") /* о О */
54 SCRIPT(deva, DEVA,
55 "Devanagari",
56 HB_SCRIPT_DEVANAGARI,
57 HINTING_TOP_TO_BOTTOM,
58 "\xE0\xA4\xA0 \xE0\xA4\xB5 \xE0\xA4\x9F") /* ठ व ट */
60 SCRIPT(grek, GREK,
61 "Greek",
62 HB_SCRIPT_GREEK,
63 HINTING_BOTTOM_TO_TOP,
64 "\xCE\xBF \xCE\x9F") /* ο Ο */
66 SCRIPT(hebr, HEBR,
67 "Hebrew",
68 HB_SCRIPT_HEBREW,
69 HINTING_BOTTOM_TO_TOP,
70 "\xD7\x9D") /* ם */
72 SCRIPT(knda, KNDA,
73 "Kannada",
74 HB_SCRIPT_KANNADA,
75 HINTING_BOTTOM_TO_TOP,
76 "\xE0\xB3\xA6 \xE0\xB2\xAC") /* ೦ ಬ */
78 /* only digit zero has a simple shape in the Khmer script */
79 SCRIPT(khmr, KHMR,
80 "Khmer",
81 HB_SCRIPT_KHMER,
82 HINTING_BOTTOM_TO_TOP,
83 "\xE1\x9F\xA0") /* ០ */
85 SCRIPT(khms, KHMS,
86 "Khmer Symbols",
87 HB_SCRIPT_INVALID,
88 HINTING_BOTTOM_TO_TOP,
89 "\xE1\xA7\xA1 \xE1\xA7\xAA") /* ᧡ ᧪ */
91 /* only digit zero has a simple shape in the Lao script */
92 SCRIPT(lao, LAO,
93 "Lao",
94 HB_SCRIPT_LAO,
95 HINTING_BOTTOM_TO_TOP,
96 "\xE0\xBB\x90") /* ໐ */
98 SCRIPT(latn, LATN,
99 "Latin",
100 HB_SCRIPT_LATIN,
101 HINTING_BOTTOM_TO_TOP,
102 "o O 0")
104 SCRIPT(latb, LATB,
105 "Latin Subscript Fallback",
106 HB_SCRIPT_INVALID,
107 HINTING_BOTTOM_TO_TOP,
108 "\xE2\x82\x92 \xE2\x82\x80") /* ₒ ₀ */
110 SCRIPT(latp, LATP,
111 "Latin Superscript Fallback",
112 HB_SCRIPT_INVALID,
113 HINTING_BOTTOM_TO_TOP,
114 "\xE1\xB5\x92 \xE1\xB4\xBC \xE2\x81\xB0") /* ᵒ ᴼ ⁰ */
116 SCRIPT(mlym, MLYM,
117 "Malayalam",
118 HB_SCRIPT_MALAYALAM,
119 HINTING_BOTTOM_TO_TOP,
120 "\xE0\xB4\xA0 \xE0\xB4\xB1") /* ഠ റ */
122 SCRIPT(mymr, MYMR,
123 "Myanmar",
124 HB_SCRIPT_MYANMAR,
125 HINTING_BOTTOM_TO_TOP,
126 "\xE1\x80\x9D \xE1\x80\x84 \xE1\x80\x82") /* ဝ င ဂ */
128 SCRIPT(sinh, SINH,
129 "Sinhala",
130 HB_SCRIPT_SINHALA,
131 HINTING_BOTTOM_TO_TOP,
132 "\xE0\xB6\xA7") /* ට */
134 /* only digit zero has a simple (round) shape in the Tamil script */
135 SCRIPT(taml, TAML,
136 "Tamil",
137 HB_SCRIPT_TAMIL,
138 HINTING_BOTTOM_TO_TOP,
139 "\xE0\xAF\xA6") /* ௦ */
141 /* there are no simple forms for letters; we thus use two digit shapes */
142 SCRIPT(telu, TELU,
143 "Telugu",
144 HB_SCRIPT_TELUGU,
145 HINTING_BOTTOM_TO_TOP,
146 "\xE0\xB1\xA6 \xE0\xB1\xA7") /* ౦ ౧ */
148 SCRIPT(thai, THAI,
149 "Thai",
150 HB_SCRIPT_THAI,
151 HINTING_BOTTOM_TO_TOP,
152 "\xE0\xB8\xB2 \xE0\xB9\x85 \xE0\xB9\x90") /* า ๅ ๐ */
154 SCRIPT(none, NONE,
155 "no script",
156 HB_SCRIPT_INVALID,
157 HINTING_BOTTOM_TO_TOP,
160 /* end of ttfautohint-scripts.h */