1 /***************************************************************************/
5 /* Auto-fitter styles (specification only). */
7 /* Copyright 2013-2018 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 /***************************************************************************/
19 /* The following part can be included multiple times. */
20 /* Define `STYLE' as needed. */
23 /* Add new styles here. The first and second arguments are the */
24 /* style name in lowercase and uppercase, respectively, followed */
25 /* by a description string. The next arguments are the */
26 /* corresponding writing system, script, blue stringset, and */
29 /* Note that styles using `AF_COVERAGE_DEFAULT' should always */
30 /* come after styles with other coverages. Also note that */
31 /* fallback scripts only use `AF_COVERAGE_DEFAULT' for its */
36 /* STYLE( cyrl_dflt, CYRL_DFLT, */
37 /* "Cyrillic default style", */
38 /* AF_WRITING_SYSTEM_LATIN, */
40 /* AF_BLUE_STRINGSET_CYRL, */
41 /* AF_COVERAGE_DEFAULT ) */
44 #define STYLE_LATIN( s, S, f, F, ds, df, C ) \
45 STYLE( s ## _ ## f, S ## _ ## F, \
47 AF_WRITING_SYSTEM_LATIN, \
49 AF_BLUE_STRINGSET_ ## S, \
52 #undef META_STYLE_LATIN
53 #define META_STYLE_LATIN( s, S, ds ) \
54 STYLE_LATIN( s, S, c2cp, C2CP, ds, \
55 "petite capitals from capitals", \
56 PETITE_CAPITALS_FROM_CAPITALS ) \
57 STYLE_LATIN( s, S, c2sc, C2SC, ds, \
58 "small capitals from capitals", \
59 SMALL_CAPITALS_FROM_CAPITALS ) \
60 STYLE_LATIN( s, S, ordn, ORDN, ds, \
63 STYLE_LATIN( s, S, pcap, PCAP, ds, \
66 STYLE_LATIN( s, S, sinf, SINF, ds, \
67 "scientific inferiors", \
68 SCIENTIFIC_INFERIORS ) \
69 STYLE_LATIN( s, S, smcp, SMCP, ds, \
72 STYLE_LATIN( s, S, subs, SUBS, ds, \
75 STYLE_LATIN( s, S, sups, SUPS, ds, \
78 STYLE_LATIN( s, S, titl, TITL, ds, \
81 STYLE_LATIN( s, S, dflt, DFLT, ds, \
86 STYLE( adlm_dflt
, ADLM_DFLT
,
87 "Adlam default style",
88 AF_WRITING_SYSTEM_LATIN
,
90 AF_BLUE_STRINGSET_ADLM
,
93 STYLE( arab_dflt
, ARAB_DFLT
,
94 "Arabic default style",
95 AF_WRITING_SYSTEM_LATIN
,
97 AF_BLUE_STRINGSET_ARAB
,
100 STYLE( armn_dflt
, ARMN_DFLT
,
101 "Armenian default style",
102 AF_WRITING_SYSTEM_LATIN
,
104 AF_BLUE_STRINGSET_ARMN
,
105 AF_COVERAGE_DEFAULT
)
107 STYLE( avst_dflt
, AVST_DFLT
,
108 "Avestan default style",
109 AF_WRITING_SYSTEM_LATIN
,
111 AF_BLUE_STRINGSET_AVST
,
112 AF_COVERAGE_DEFAULT
)
114 STYLE( bamu_dflt
, BAMU_DFLT
,
115 "Bamum default style",
116 AF_WRITING_SYSTEM_LATIN
,
118 AF_BLUE_STRINGSET_BAMU
,
119 AF_COVERAGE_DEFAULT
)
121 STYLE( beng_dflt
, BENG_DFLT
,
122 "Bengali default style",
123 AF_WRITING_SYSTEM_LATIN
,
125 AF_BLUE_STRINGSET_BENG
,
126 AF_COVERAGE_DEFAULT
)
128 STYLE( buhd_dflt
, BUHD_DFLT
,
129 "Buhid default style",
130 AF_WRITING_SYSTEM_LATIN
,
132 AF_BLUE_STRINGSET_BUHD
,
133 AF_COVERAGE_DEFAULT
)
135 STYLE( cakm_dflt
, CAKM_DFLT
,
136 "Chakma default style",
137 AF_WRITING_SYSTEM_LATIN
,
139 AF_BLUE_STRINGSET_CAKM
,
140 AF_COVERAGE_DEFAULT
)
142 STYLE( cans_dflt
, CANS_DFLT
,
143 "Canadian Syllabics default style",
144 AF_WRITING_SYSTEM_LATIN
,
146 AF_BLUE_STRINGSET_CANS
,
147 AF_COVERAGE_DEFAULT
)
149 STYLE( cari_dflt
, CARI_DFLT
,
150 "Carian default style",
151 AF_WRITING_SYSTEM_LATIN
,
153 AF_BLUE_STRINGSET_CARI
,
154 AF_COVERAGE_DEFAULT
)
156 STYLE( cher_dflt
, CHER_DFLT
,
157 "Cherokee default style",
158 AF_WRITING_SYSTEM_LATIN
,
160 AF_BLUE_STRINGSET_CHER
,
161 AF_COVERAGE_DEFAULT
)
163 STYLE( copt_dflt
, COPT_DFLT
,
164 "Coptic default style",
165 AF_WRITING_SYSTEM_LATIN
,
167 AF_BLUE_STRINGSET_COPT
,
168 AF_COVERAGE_DEFAULT
)
170 STYLE( cprt_dflt
, CPRT_DFLT
,
171 "Cypriot default style",
172 AF_WRITING_SYSTEM_LATIN
,
174 AF_BLUE_STRINGSET_CPRT
,
175 AF_COVERAGE_DEFAULT
)
177 META_STYLE_LATIN( cyrl
, CYRL
, "Cyrillic" )
179 STYLE( deva_dflt
, DEVA_DFLT
,
180 "Devanagari default style",
181 AF_WRITING_SYSTEM_LATIN
,
183 AF_BLUE_STRINGSET_DEVA
,
184 AF_COVERAGE_DEFAULT
)
186 STYLE( dsrt_dflt
, DSRT_DFLT
,
187 "Deseret default style",
188 AF_WRITING_SYSTEM_LATIN
,
190 AF_BLUE_STRINGSET_DSRT
,
191 AF_COVERAGE_DEFAULT
)
193 STYLE( ethi_dflt
, ETHI_DFLT
,
194 "Ethiopic default style",
195 AF_WRITING_SYSTEM_LATIN
,
197 AF_BLUE_STRINGSET_ETHI
,
198 AF_COVERAGE_DEFAULT
)
200 STYLE( geor_dflt
, GEOR_DFLT
,
201 "Georgian (Mkhedruli) default style",
202 AF_WRITING_SYSTEM_LATIN
,
204 AF_BLUE_STRINGSET_GEOR
,
205 AF_COVERAGE_DEFAULT
)
207 STYLE( geok_dflt
, GEOK_DFLT
,
208 "Georgian (Khutsuri) default style",
209 AF_WRITING_SYSTEM_LATIN
,
211 AF_BLUE_STRINGSET_GEOK
,
212 AF_COVERAGE_DEFAULT
)
214 STYLE( glag_dflt
, GLAG_DFLT
,
215 "Glagolitic default style",
216 AF_WRITING_SYSTEM_LATIN
,
218 AF_BLUE_STRINGSET_GLAG
,
219 AF_COVERAGE_DEFAULT
)
221 STYLE( goth_dflt
, GOTH_DFLT
,
222 "Gothic default style",
223 AF_WRITING_SYSTEM_LATIN
,
225 AF_BLUE_STRINGSET_GOTH
,
226 AF_COVERAGE_DEFAULT
)
228 META_STYLE_LATIN( grek
, GREK
, "Greek" )
230 STYLE( gujr_dflt
, GUJR_DFLT
,
231 "Gujarati default style",
232 AF_WRITING_SYSTEM_LATIN
,
234 AF_BLUE_STRINGSET_GUJR
,
235 AF_COVERAGE_DEFAULT
)
237 STYLE( guru_dflt
, GURU_DFLT
,
238 "Gurmukhi default style",
239 AF_WRITING_SYSTEM_LATIN
,
241 AF_BLUE_STRINGSET_GURU
,
242 AF_COVERAGE_DEFAULT
)
244 STYLE( hebr_dflt
, HEBR_DFLT
,
245 "Hebrew default style",
246 AF_WRITING_SYSTEM_LATIN
,
248 AF_BLUE_STRINGSET_HEBR
,
249 AF_COVERAGE_DEFAULT
)
251 STYLE( kali_dflt
, KALI_DFLT
,
252 "Kayah Li default style",
253 AF_WRITING_SYSTEM_LATIN
,
255 AF_BLUE_STRINGSET_KALI
,
256 AF_COVERAGE_DEFAULT
)
258 STYLE( khmr_dflt
, KHMR_DFLT
,
259 "Khmer default style",
260 AF_WRITING_SYSTEM_LATIN
,
262 AF_BLUE_STRINGSET_KHMR
,
263 AF_COVERAGE_DEFAULT
)
265 STYLE( khms_dflt
, KHMS_DFLT
,
266 "Khmer Symbols default style",
267 AF_WRITING_SYSTEM_LATIN
,
269 AF_BLUE_STRINGSET_KHMS
,
270 AF_COVERAGE_DEFAULT
)
272 STYLE( knda_dflt
, KNDA_DFLT
,
273 "Kannada default style",
274 AF_WRITING_SYSTEM_LATIN
,
276 AF_BLUE_STRINGSET_KNDA
,
277 AF_COVERAGE_DEFAULT
)
279 STYLE( lao_dflt
, LAO_DFLT
,
281 AF_WRITING_SYSTEM_LATIN
,
283 AF_BLUE_STRINGSET_LAO
,
284 AF_COVERAGE_DEFAULT
)
286 META_STYLE_LATIN( latn
, LATN
, "Latin" )
288 STYLE( latb_dflt
, LATB_DFLT
,
289 "Latin subscript fallback default style",
290 AF_WRITING_SYSTEM_LATIN
,
292 AF_BLUE_STRINGSET_LATB
,
293 AF_COVERAGE_DEFAULT
)
295 STYLE( latp_dflt
, LATP_DFLT
,
296 "Latin superscript fallback default style",
297 AF_WRITING_SYSTEM_LATIN
,
299 AF_BLUE_STRINGSET_LATP
,
300 AF_COVERAGE_DEFAULT
)
302 #ifdef FT_OPTION_AUTOFIT2
303 STYLE( ltn2_dflt
, LTN2_DFLT
,
304 "Latin 2 default style",
305 AF_WRITING_SYSTEM_LATIN2
,
307 AF_BLUE_STRINGSET_LATN
,
308 AF_COVERAGE_DEFAULT
)
311 STYLE( lisu_dflt
, LISU_DFLT
,
312 "Lisu default style",
313 AF_WRITING_SYSTEM_LATIN
,
315 AF_BLUE_STRINGSET_LISU
,
316 AF_COVERAGE_DEFAULT
)
318 STYLE( mlym_dflt
, MLYM_DFLT
,
319 "Malayalam default style",
320 AF_WRITING_SYSTEM_LATIN
,
322 AF_BLUE_STRINGSET_MLYM
,
323 AF_COVERAGE_DEFAULT
)
325 STYLE( mymr_dflt
, MYMR_DFLT
,
326 "Myanmar default style",
327 AF_WRITING_SYSTEM_LATIN
,
329 AF_BLUE_STRINGSET_MYMR
,
330 AF_COVERAGE_DEFAULT
)
332 STYLE( nkoo_dflt
, NKOO_DFLT
,
333 "N'Ko default style",
334 AF_WRITING_SYSTEM_LATIN
,
336 AF_BLUE_STRINGSET_NKOO
,
337 AF_COVERAGE_DEFAULT
)
339 STYLE( none_dflt
, NONE_DFLT
,
341 AF_WRITING_SYSTEM_DUMMY
,
343 AF_BLUE_STRINGSET_NONE
,
344 AF_COVERAGE_DEFAULT
)
346 STYLE( olck_dflt
, OLCK_DFLT
,
347 "Ol Chiki default style",
348 AF_WRITING_SYSTEM_LATIN
,
350 AF_BLUE_STRINGSET_OLCK
,
351 AF_COVERAGE_DEFAULT
)
353 STYLE( orkh_dflt
, ORKH_DFLT
,
354 "Old Turkic default style",
355 AF_WRITING_SYSTEM_LATIN
,
357 AF_BLUE_STRINGSET_ORKH
,
358 AF_COVERAGE_DEFAULT
)
360 STYLE( osge_dflt
, OSGE_DFLT
,
361 "Osage default style",
362 AF_WRITING_SYSTEM_LATIN
,
364 AF_BLUE_STRINGSET_OSGE
,
365 AF_COVERAGE_DEFAULT
)
367 STYLE( osma_dflt
, OSMA_DFLT
,
368 "Osmanya default style",
369 AF_WRITING_SYSTEM_LATIN
,
371 AF_BLUE_STRINGSET_OSMA
,
372 AF_COVERAGE_DEFAULT
)
374 STYLE( saur_dflt
, SAUR_DFLT
,
375 "Saurashtra default style",
376 AF_WRITING_SYSTEM_LATIN
,
378 AF_BLUE_STRINGSET_SAUR
,
379 AF_COVERAGE_DEFAULT
)
381 STYLE( shaw_dflt
, SHAW_DFLT
,
382 "Shavian default style",
383 AF_WRITING_SYSTEM_LATIN
,
385 AF_BLUE_STRINGSET_SHAW
,
386 AF_COVERAGE_DEFAULT
)
388 STYLE( sinh_dflt
, SINH_DFLT
,
389 "Sinhala default style",
390 AF_WRITING_SYSTEM_LATIN
,
392 AF_BLUE_STRINGSET_SINH
,
393 AF_COVERAGE_DEFAULT
)
395 STYLE( sund_dflt
, SUND_DFLT
,
396 "Sundanese default style",
397 AF_WRITING_SYSTEM_LATIN
,
399 AF_BLUE_STRINGSET_SUND
,
400 AF_COVERAGE_DEFAULT
)
402 STYLE( taml_dflt
, TAML_DFLT
,
403 "Tamil default style",
404 AF_WRITING_SYSTEM_LATIN
,
406 AF_BLUE_STRINGSET_TAML
,
407 AF_COVERAGE_DEFAULT
)
409 STYLE( tavt_dflt
, TAVT_DFLT
,
410 "Tai Viet default style",
411 AF_WRITING_SYSTEM_LATIN
,
413 AF_BLUE_STRINGSET_TAVT
,
414 AF_COVERAGE_DEFAULT
)
416 STYLE( telu_dflt
, TELU_DFLT
,
417 "Telugu default style",
418 AF_WRITING_SYSTEM_LATIN
,
420 AF_BLUE_STRINGSET_TELU
,
421 AF_COVERAGE_DEFAULT
)
423 STYLE( tfng_dflt
, TFNG_DFLT
,
424 "Tifinagh default style",
425 AF_WRITING_SYSTEM_LATIN
,
427 AF_BLUE_STRINGSET_TFNG
,
428 AF_COVERAGE_DEFAULT
)
430 STYLE( thai_dflt
, THAI_DFLT
,
431 "Thai default style",
432 AF_WRITING_SYSTEM_LATIN
,
434 AF_BLUE_STRINGSET_THAI
,
435 AF_COVERAGE_DEFAULT
)
437 STYLE( vaii_dflt
, VAII_DFLT
,
439 AF_WRITING_SYSTEM_LATIN
,
441 AF_BLUE_STRINGSET_VAII
,
442 AF_COVERAGE_DEFAULT
)
444 #ifdef AF_CONFIG_OPTION_INDIC
446 /* no blue stringset support for the Indic writing system yet */
447 #undef STYLE_DEFAULT_INDIC
448 #define STYLE_DEFAULT_INDIC( s, S, d ) \
449 STYLE( s ## _dflt, S ## _DFLT, \
450 d " default style", \
451 AF_WRITING_SYSTEM_INDIC, \
453 (AF_Blue_Stringset)0, \
454 AF_COVERAGE_DEFAULT )
456 STYLE_DEFAULT_INDIC( limb
, LIMB
, "Limbu" )
457 STYLE_DEFAULT_INDIC( orya
, ORYA
, "Oriya" )
458 STYLE_DEFAULT_INDIC( sylo
, SYLO
, "Syloti Nagri" )
459 STYLE_DEFAULT_INDIC( tibt
, TIBT
, "Tibetan" )
461 #endif /* AF_CONFIG_OPTION_INDIC */
463 #ifdef AF_CONFIG_OPTION_CJK
465 STYLE( hani_dflt
, HANI_DFLT
,
466 "CJKV ideographs default style",
467 AF_WRITING_SYSTEM_CJK
,
469 AF_BLUE_STRINGSET_HANI
,
470 AF_COVERAGE_DEFAULT
)
472 #endif /* AF_CONFIG_OPTION_CJK */