sdk-world
v2026.11.05
PS2 SDK - world tier (copyleft-allowed, non-essential packages)
Toggle main menu visibility
Loading...
Searching...
No Matches
afscript.h
Go to the documentation of this file.
1
/****************************************************************************
2
*
3
* afscript.h
4
*
5
* Auto-fitter scripts (specification only).
6
*
7
* Copyright (C) 2013-2025 by
8
* David Turner, Robert Wilhelm, and Werner Lemberg.
9
*
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.
15
*
16
*/
17
18
19
/* The following part can be included multiple times. */
20
/* Define `SCRIPT' as needed. */
21
22
23
/* Add new scripts here. The first and second arguments are the */
24
/* script name in lowercase and uppercase, respectively, followed */
25
/* by a description string. Then comes the corresponding HarfBuzz */
26
/* script name tag, followed by a string of standard characters (to */
27
/* derive the standard width and height of stems). */
28
/* */
29
/* Note that fallback scripts only have a default style, thus we */
30
/* use `HB_SCRIPT_INVALID' as the HarfBuzz script name tag for */
31
/* them. */
32
37
SCRIPT( adlm, ADLM,
38
"Adlam"
,
39
HB_SCRIPT_ADLAM,
40
HINTING_BOTTOM_TO_TOP,
41
"\xF0\x9E\xA4\x8C \xF0\x9E\xA4\xAE"
)
/* 𞤌 𞤮 */
42
43
SCRIPT( arab, ARAB,
44
"Arabic"
,
45
HB_SCRIPT_ARABIC,
46
HINTING_BOTTOM_TO_TOP,
47
"\xD9\x84 \xD8\xAD \xD9\x80"
)
/* ل ح ـ */
48
49
SCRIPT( armn, ARMN,
50
"Armenian"
,
51
HB_SCRIPT_ARMENIAN,
52
HINTING_BOTTOM_TO_TOP,
53
"\xD5\xBD \xD5\x8D"
)
/* ս Ս */
54
55
SCRIPT( avst, AVST,
56
"Avestan"
,
57
HB_SCRIPT_AVESTAN,
58
HINTING_BOTTOM_TO_TOP,
59
"\xF0\x90\xAC\x9A"
)
/* 𐬚 */
60
61
SCRIPT( bamu, BAMU,
62
"Bamum"
,
63
HB_SCRIPT_BAMUM,
64
HINTING_BOTTOM_TO_TOP,
65
"\xEA\x9B\x81 \xEA\x9B\xAF"
)
/* ꛁ ꛯ */
66
67
/* there are no simple forms for letters; we thus use two digit shapes */
68
SCRIPT( beng, BENG,
69
"Bengali"
,
70
HB_SCRIPT_BENGALI,
71
HINTING_TOP_TO_BOTTOM,
72
"\xE0\xA7\xA6 \xE0\xA7\xAA"
)
/* ০ ৪ */
73
74
SCRIPT( buhd, BUHD,
75
"Buhid"
,
76
HB_SCRIPT_BUHID,
77
HINTING_BOTTOM_TO_TOP,
78
"\xE1\x9D\x8B \xE1\x9D\x8F"
)
/* ᝋ ᝏ */
79
80
SCRIPT( cakm, CAKM,
81
"Chakma"
,
82
HB_SCRIPT_CHAKMA,
83
HINTING_BOTTOM_TO_TOP,
84
"\xF0\x91\x84\xA4 \xF0\x91\x84\x89 \xF0\x91\x84\x9B"
)
/* 𑄤 𑄉 𑄛 */
85
86
SCRIPT( cans, CANS,
87
"Canadian Syllabics"
,
88
HB_SCRIPT_CANADIAN_SYLLABICS,
89
HINTING_BOTTOM_TO_TOP,
90
"\xE1\x91\x8C \xE1\x93\x9A"
)
/* ᑌ ᓚ */
91
92
SCRIPT( cari, CARI,
93
"Carian"
,
94
HB_SCRIPT_CARIAN,
95
HINTING_BOTTOM_TO_TOP,
96
"\xF0\x90\x8A\xAB \xF0\x90\x8B\x89"
)
/* 𐊫 𐋉 */
97
98
SCRIPT( cher, CHER,
99
"Cherokee"
,
100
HB_SCRIPT_CHEROKEE,
101
HINTING_BOTTOM_TO_TOP,
102
"\xE1\x8E\xA4 \xE1\x8F\x85 \xEA\xAE\x95"
)
/* Ꭴ Ꮕ ꮕ */
103
104
SCRIPT( copt, COPT,
105
"Coptic"
,
106
HB_SCRIPT_COPTIC,
107
HINTING_BOTTOM_TO_TOP,
108
"\xE2\xB2\x9E \xE2\xB2\x9F"
)
/* Ⲟ ⲟ */
109
110
SCRIPT( cprt, CPRT,
111
"Cypriot"
,
112
HB_SCRIPT_CYPRIOT,
113
HINTING_BOTTOM_TO_TOP,
114
"\xF0\x90\xA0\x85 \xF0\x90\xA0\xA3"
)
/* 𐠅 𐠣 */
115
116
SCRIPT( cyrl, CYRL,
117
"Cyrillic"
,
118
HB_SCRIPT_CYRILLIC,
119
HINTING_BOTTOM_TO_TOP,
120
"\xD0\xBE \xD0\x9E"
)
/* о О */
121
122
SCRIPT( deva, DEVA,
123
"Devanagari"
,
124
HB_SCRIPT_DEVANAGARI,
125
HINTING_TOP_TO_BOTTOM,
126
"\xE0\xA4\xA0 \xE0\xA4\xB5 \xE0\xA4\x9F"
)
/* ठ व ट */
127
128
SCRIPT( dsrt, DSRT,
129
"Deseret"
,
130
HB_SCRIPT_DESERET,
131
HINTING_BOTTOM_TO_TOP,
132
"\xF0\x90\x90\x84 \xF0\x90\x90\xAC"
)
/* 𐐄 𐐬 */
133
134
SCRIPT( ethi, ETHI,
135
"Ethiopic"
,
136
HB_SCRIPT_ETHIOPIC,
137
HINTING_BOTTOM_TO_TOP,
138
"\xE1\x8B\x90"
)
/* ዐ */
139
140
SCRIPT( geor, GEOR,
141
"Georgian (Mkhedruli)"
,
142
HB_SCRIPT_GEORGIAN,
143
HINTING_BOTTOM_TO_TOP,
144
"\xE1\x83\x98 \xE1\x83\x94 \xE1\x83\x90 \xE1\xB2\xBF"
)
/* ი ე ა Ი */
145
146
SCRIPT( geok, GEOK,
147
"Georgian (Khutsuri)"
,
148
HB_SCRIPT_INVALID,
149
HINTING_BOTTOM_TO_TOP,
150
"\xE1\x82\xB6 \xE1\x82\xB1 \xE2\xB4\x99"
)
/* Ⴖ Ⴑ ⴙ */
151
152
SCRIPT( glag, GLAG,
153
"Glagolitic"
,
154
HB_SCRIPT_GLAGOLITIC,
155
HINTING_BOTTOM_TO_TOP,
156
"\xE2\xB0\x95 \xE2\xB1\x85"
)
/* Ⱅ ⱅ */
157
158
SCRIPT( goth, GOTH,
159
"Gothic"
,
160
HB_SCRIPT_GOTHIC,
161
HINTING_TOP_TO_BOTTOM,
162
"\xF0\x90\x8C\xB4 \xF0\x90\x8C\xBE \xF0\x90\x8D\x83"
)
/* 𐌴 𐌾 𐍃 */
163
164
SCRIPT( grek, GREK,
165
"Greek"
,
166
HB_SCRIPT_GREEK,
167
HINTING_BOTTOM_TO_TOP,
168
"\xCE\xBF \xCE\x9F"
)
/* ο Ο */
169
170
SCRIPT( gujr, GUJR,
171
"Gujarati"
,
172
HB_SCRIPT_GUJARATI,
173
HINTING_BOTTOM_TO_TOP,
174
"\xE0\xAA\x9F \xE0\xAB\xA6"
)
/* ટ ૦ */
175
176
SCRIPT( guru, GURU,
177
"Gurmukhi"
,
178
HB_SCRIPT_GURMUKHI,
179
HINTING_TOP_TO_BOTTOM,
180
"\xE0\xA8\xA0 \xE0\xA8\xB0 \xE0\xA9\xA6"
)
/* ਠ ਰ ੦ */
181
182
SCRIPT( hebr, HEBR,
183
"Hebrew"
,
184
HB_SCRIPT_HEBREW,
185
HINTING_BOTTOM_TO_TOP,
186
"\xD7\x9D"
)
/* ם */
187
188
SCRIPT( kali, KALI,
189
"Kayah Li"
,
190
HB_SCRIPT_KAYAH_LI,
191
HINTING_BOTTOM_TO_TOP,
192
"\xEA\xA4\x8D \xEA\xA4\x80"
)
/* ꤍ ꤀ */
193
194
/* only digit zero has a simple shape in the Khmer script */
195
SCRIPT( khmr, KHMR,
196
"Khmer"
,
197
HB_SCRIPT_KHMER,
198
HINTING_BOTTOM_TO_TOP,
199
"\xE1\x9F\xA0"
)
/* ០ */
200
201
SCRIPT( khms, KHMS,
202
"Khmer Symbols"
,
203
HB_SCRIPT_INVALID,
204
HINTING_BOTTOM_TO_TOP,
205
"\xE1\xA7\xA1 \xE1\xA7\xAA"
)
/* ᧡ ᧪ */
206
207
SCRIPT( knda, KNDA,
208
"Kannada"
,
209
HB_SCRIPT_KANNADA,
210
HINTING_BOTTOM_TO_TOP,
211
"\xE0\xB3\xA6 \xE0\xB2\xAC"
)
/* ೦ ಬ */
212
213
/* only digit zero has a simple shape in the Lao script */
214
SCRIPT( lao, LAO,
215
"Lao"
,
216
HB_SCRIPT_LAO,
217
HINTING_BOTTOM_TO_TOP,
218
"\xE0\xBB\x90"
)
/* ໐ */
219
220
SCRIPT( latn, LATN,
221
"Latin"
,
222
HB_SCRIPT_LATIN,
223
HINTING_BOTTOM_TO_TOP,
224
"o O 0"
)
225
226
SCRIPT( latb, LATB,
227
"Latin Subscript Fallback"
,
228
HB_SCRIPT_INVALID,
229
HINTING_BOTTOM_TO_TOP,
230
"\xE2\x82\x92 \xE2\x82\x80"
)
/* ₒ ₀ */
231
232
SCRIPT( latp, LATP,
233
"Latin Superscript Fallback"
,
234
HB_SCRIPT_INVALID,
235
HINTING_BOTTOM_TO_TOP,
236
"\xE1\xB5\x92 \xE1\xB4\xBC \xE2\x81\xB0"
)
/* ᵒ ᴼ ⁰ */
237
238
SCRIPT( lisu, LISU,
239
"Lisu"
,
240
HB_SCRIPT_LISU,
241
HINTING_BOTTOM_TO_TOP,
242
"\xEA\x93\xB3"
)
/* ꓳ */
243
244
SCRIPT( mlym, MLYM,
245
"Malayalam"
,
246
HB_SCRIPT_MALAYALAM,
247
HINTING_BOTTOM_TO_TOP,
248
"\xE0\xB4\xA0 \xE0\xB4\xB1"
)
/* ഠ റ */
249
250
SCRIPT( medf, MEDF,
251
"Medefaidrin"
,
252
HB_SCRIPT_MEDEFAIDRIN,
253
HINTING_BOTTOM_TO_TOP,
254
"\xF0\x96\xB9\xA1 \xF0\x96\xB9\x9B \xF0\x96\xB9\xAF"
)
/* 𖹡 𖹛 𖹯 */
255
256
SCRIPT( mong, MONG,
257
"Mongolian"
,
258
HB_SCRIPT_MONGOLIAN,
259
HINTING_TOP_TO_BOTTOM,
260
"\xE1\xA1\x82 \xE1\xA0\xAA"
)
/* ᡂ ᠪ */
261
262
SCRIPT( mymr, MYMR,
263
"Myanmar"
,
264
HB_SCRIPT_MYANMAR,
265
HINTING_BOTTOM_TO_TOP,
266
"\xE1\x80\x9D \xE1\x80\x84 \xE1\x80\x82"
)
/* ဝ င ဂ */
267
268
SCRIPT( nkoo, NKOO,
269
"N'Ko"
,
270
HB_SCRIPT_NKO,
271
HINTING_BOTTOM_TO_TOP,
272
"\xDF\x8B \xDF\x80"
)
/* ߋ ߀ */
273
274
SCRIPT( none, NONE,
275
"no script"
,
276
HB_SCRIPT_INVALID,
277
HINTING_BOTTOM_TO_TOP,
278
""
)
279
280
SCRIPT( olck, OLCK,
281
"Ol Chiki"
,
282
HB_SCRIPT_OL_CHIKI,
283
HINTING_BOTTOM_TO_TOP,
284
"\xE1\xB1\x9B"
)
/* ᱛ */
285
286
SCRIPT( orkh, ORKH,
287
"Old Turkic"
,
288
HB_SCRIPT_OLD_TURKIC,
289
HINTING_BOTTOM_TO_TOP,
290
"\xF0\x90\xB0\x97"
)
/* 𐰗 */
291
292
SCRIPT( osge, OSGE,
293
"Osage"
,
294
HB_SCRIPT_OSAGE,
295
HINTING_BOTTOM_TO_TOP,
296
"\xF0\x90\x93\x82 \xF0\x90\x93\xAA"
)
/* 𐓂 𐓪 */
297
298
SCRIPT( osma, OSMA,
299
"Osmanya"
,
300
HB_SCRIPT_OSMANYA,
301
HINTING_BOTTOM_TO_TOP,
302
"\xF0\x90\x92\x86 \xF0\x90\x92\xA0"
)
/* 𐒆 𐒠 */
303
304
SCRIPT( rohg, ROHG,
305
"Hanifi Rohingya"
,
306
HB_SCRIPT_HANIFI_ROHINGYA,
307
HINTING_BOTTOM_TO_TOP,
308
"\xF0\x90\xB4\xB0"
)
/* 𐴰 */
309
310
SCRIPT( saur, SAUR,
311
"Saurashtra"
,
312
HB_SCRIPT_SAURASHTRA,
313
HINTING_BOTTOM_TO_TOP,
314
"\xEA\xA2\x9D \xEA\xA3\x90"
)
/* ꢝ ꣐ */
315
316
SCRIPT( shaw, SHAW,
317
"Shavian"
,
318
HB_SCRIPT_SHAVIAN,
319
HINTING_BOTTOM_TO_TOP,
320
"\xF0\x90\x91\xB4"
)
/* 𐑴 */
321
322
SCRIPT( sinh, SINH,
323
"Sinhala"
,
324
HB_SCRIPT_SINHALA,
325
HINTING_BOTTOM_TO_TOP,
326
"\xE0\xB6\xA7"
)
/* ට */
327
328
/* only digit zero has a simple (round) shape in the Sundanese script */
329
SCRIPT( sund, SUND,
330
"Sundanese"
,
331
HB_SCRIPT_SUNDANESE,
332
HINTING_BOTTOM_TO_TOP,
333
"\xE1\xAE\xB0"
)
/* ᮰ */
334
335
/* only digit zero has a simple (round) shape in the Tamil script */
336
SCRIPT( taml, TAML,
337
"Tamil"
,
338
HB_SCRIPT_TAMIL,
339
HINTING_BOTTOM_TO_TOP,
340
"\xE0\xAF\xA6"
)
/* ௦ */
341
342
SCRIPT( tavt, TAVT,
343
"Tai Viet"
,
344
HB_SCRIPT_TAI_VIET,
345
HINTING_BOTTOM_TO_TOP,
346
"\xEA\xAA\x92 \xEA\xAA\xAB"
)
/* ꪒ ꪫ */
347
348
/* there are no simple forms for letters; we thus use two digit shapes */
349
SCRIPT( telu, TELU,
350
"Telugu"
,
351
HB_SCRIPT_TELUGU,
352
HINTING_BOTTOM_TO_TOP,
353
"\xE0\xB1\xA6 \xE0\xB1\xA7"
)
/* ౦ ౧ */
354
355
SCRIPT( tfng, TFNG,
356
"Tifinagh"
,
357
HB_SCRIPT_TIFINAGH,
358
HINTING_BOTTOM_TO_TOP,
359
"\xE2\xB5\x94"
)
/* ⵔ */
360
361
SCRIPT( thai, THAI,
362
"Thai"
,
363
HB_SCRIPT_THAI,
364
HINTING_BOTTOM_TO_TOP,
365
"\xE0\xB8\xB2 \xE0\xB9\x85 \xE0\xB9\x90"
)
/* า ๅ ๐ */
366
367
SCRIPT( vaii, VAII,
368
"Vai"
,
369
HB_SCRIPT_VAI,
370
HINTING_BOTTOM_TO_TOP,
371
"\xEA\x98\x93 \xEA\x96\x9C \xEA\x96\xB4"
)
/* ꘓ ꖜ ꖴ */
372
373
#ifdef AF_CONFIG_OPTION_INDIC
374
375
SCRIPT( limb, LIMB,
376
"Limbu"
,
377
HB_SCRIPT_LIMBU,
378
HINTING_BOTTOM_TO_TOP,
379
"o"
)
/* XXX */
380
381
SCRIPT( orya, ORYA,
382
"Oriya"
,
383
HB_SCRIPT_ORIYA,
384
HINTING_BOTTOM_TO_TOP,
385
"o"
)
/* XXX */
386
387
SCRIPT( sylo, SYLO,
388
"Syloti Nagri"
,
389
HB_SCRIPT_SYLOTI_NAGRI,
390
HINTING_BOTTOM_TO_TOP,
391
"o"
)
/* XXX */
392
393
SCRIPT( tibt, TIBT,
394
"Tibetan"
,
395
HB_SCRIPT_TIBETAN,
396
HINTING_BOTTOM_TO_TOP,
397
"o"
)
/* XXX */
398
399
#endif
/* AF_CONFIG_OPTION_INDIC */
400
401
#ifdef AF_CONFIG_OPTION_CJK
402
403
SCRIPT( hani, HANI,
404
"CJKV ideographs"
,
405
HB_SCRIPT_HAN,
406
HINTING_BOTTOM_TO_TOP,
407
"\xE7\x94\xB0 \xE5\x9B\x97"
)
/* 田 囗 */
408
409
#endif
/* AF_CONFIG_OPTION_CJK */
410
411
412
/* END */
freetype
src
autofit
afscript.h
Generated by
1.18.0