1 /***************************************************************************/
5 /* Auto-fitter styles (specification only). */
7 /* Copyright 2013-2015 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 capticals from capitals", \
56 PETITE_CAPITALS_FROM_CAPITALS ) \
57 STYLE_LATIN( s, S, c2sc, C2SC, ds, \
58 "small capticals 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( arab_dflt
, ARAB_DFLT
,
87 "Arabic default style",
88 AF_WRITING_SYSTEM_LATIN
,
90 AF_BLUE_STRINGSET_ARAB
,
93 META_STYLE_LATIN( cyrl
, CYRL
, "Cyrillic" )
95 STYLE( deva_dflt
, DEVA_DFLT
,
96 "Devanagari default style",
97 AF_WRITING_SYSTEM_LATIN
,
99 AF_BLUE_STRINGSET_DEVA
,
100 AF_COVERAGE_DEFAULT
)
102 META_STYLE_LATIN( grek
, GREK
, "Greek" )
104 STYLE( hebr_dflt
, HEBR_DFLT
,
105 "Hebrew default style",
106 AF_WRITING_SYSTEM_LATIN
,
108 AF_BLUE_STRINGSET_HEBR
,
109 AF_COVERAGE_DEFAULT
)
111 STYLE( lao_dflt
, LAO_DFLT
,
113 AF_WRITING_SYSTEM_LATIN
,
115 AF_BLUE_STRINGSET_LAO
,
116 AF_COVERAGE_DEFAULT
)
118 META_STYLE_LATIN( latn
, LATN
, "Latin" )
120 STYLE( latb_dflt
, LATB_DFLT
,
121 "Latin subscript fallback default style",
122 AF_WRITING_SYSTEM_LATIN
,
124 AF_BLUE_STRINGSET_LATB
,
125 AF_COVERAGE_DEFAULT
)
127 STYLE( latp_dflt
, LATP_DFLT
,
128 "Latin superscript fallback default style",
129 AF_WRITING_SYSTEM_LATIN
,
131 AF_BLUE_STRINGSET_LATP
,
132 AF_COVERAGE_DEFAULT
)
134 #ifdef FT_OPTION_AUTOFIT2
135 STYLE( ltn2_dflt
, LTN2_DFLT
,
136 "Latin 2 default style",
137 AF_WRITING_SYSTEM_LATIN2
,
139 AF_BLUE_STRINGSET_LATN
,
140 AF_COVERAGE_DEFAULT
)
143 STYLE( none_dflt
, NONE_DFLT
,
145 AF_WRITING_SYSTEM_DUMMY
,
147 (AF_Blue_Stringset
)0,
148 AF_COVERAGE_DEFAULT
)
150 STYLE( telu_dflt
, TELU_DFLT
,
151 "Telugu default style",
152 AF_WRITING_SYSTEM_LATIN
,
154 AF_BLUE_STRINGSET_TELU
,
155 AF_COVERAGE_DEFAULT
)
157 STYLE( thai_dflt
, THAI_DFLT
,
158 "Thai default style",
159 AF_WRITING_SYSTEM_LATIN
,
161 AF_BLUE_STRINGSET_THAI
,
162 AF_COVERAGE_DEFAULT
)
164 #ifdef AF_CONFIG_OPTION_INDIC
166 /* no blue stringset support for the Indic writing system yet */
167 #undef STYLE_DEFAULT_INDIC
168 #define STYLE_DEFAULT_INDIC( s, S, d ) \
169 STYLE( s ## _dflt, S ## _DFLT, \
170 d " default style", \
171 AF_WRITING_SYSTEM_INDIC, \
173 (AF_Blue_Stringset)0, \
174 AF_COVERAGE_DEFAULT )
176 STYLE_DEFAULT_INDIC( beng
, BENG
, "Bengali" )
177 STYLE_DEFAULT_INDIC( gujr
, GUJR
, "Gujarati" )
178 STYLE_DEFAULT_INDIC( guru
, GURU
, "Gurmukhi" )
179 STYLE_DEFAULT_INDIC( knda
, KNDA
, "Kannada" )
180 STYLE_DEFAULT_INDIC( limb
, LIMB
, "Limbu" )
181 STYLE_DEFAULT_INDIC( mlym
, MLYM
, "Malayalam" )
182 STYLE_DEFAULT_INDIC( orya
, ORYA
, "Oriya" )
183 STYLE_DEFAULT_INDIC( sinh
, SINH
, "Sinhala" )
184 STYLE_DEFAULT_INDIC( sund
, SUND
, "Sundanese" )
185 STYLE_DEFAULT_INDIC( sylo
, SYLO
, "Syloti Nagri" )
186 STYLE_DEFAULT_INDIC( taml
, TAML
, "Tamil" )
187 STYLE_DEFAULT_INDIC( tibt
, TIBT
, "Tibetan" )
189 #endif /* AF_CONFIG_OPTION_INDIC */
191 #ifdef AF_CONFIG_OPTION_CJK
193 STYLE( hani_dflt
, HANI_DFLT
,
194 "CJKV ideographs default style",
195 AF_WRITING_SYSTEM_CJK
,
197 AF_BLUE_STRINGSET_HANI
,
198 AF_COVERAGE_DEFAULT
)
200 #endif /* AF_CONFIG_OPTION_CJK */