tizen 2.3.1 release
[framework/graphics/freetype.git] / src / autofit / afstyles.h
1 /***************************************************************************/
2 /*                                                                         */
3 /*  afstyles.h                                                             */
4 /*                                                                         */
5 /*    Auto-fitter styles (specification only).                             */
6 /*                                                                         */
7 /*  Copyright 2013, 2014 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 `STYLE' as needed.                          */
21
22
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     */
27   /* coverage.                                                     */
28   /*                                                               */
29   /* Note that styles using `AF_COVERAGE_DEFAULT' should always    */
30   /* come after styles with other coverages.                       */
31   /*                                                               */
32   /* Example:                                                      */
33   /*                                                               */
34   /*   STYLE( cyrl_dflt, CYRL_DFLT,                                */
35   /*          "Cyrillic default style",                            */
36   /*          AF_WRITING_SYSTEM_LATIN,                             */
37   /*          AF_SCRIPT_CYRL,                                      */
38   /*          AF_BLUE_STRINGSET_CYRL,                              */
39   /*          AF_COVERAGE_DEFAULT )                                */
40
41 #undef  STYLE_LATIN
42 #define STYLE_LATIN( s, S, f, F, ds, df, C ) \
43           STYLE( s ## _ ## f, S ## _ ## F,   \
44                  ds " " df " style",         \
45                  AF_WRITING_SYSTEM_LATIN,    \
46                  AF_SCRIPT_ ## S,            \
47                  AF_BLUE_STRINGSET_ ## S,    \
48                  AF_COVERAGE_ ## C )
49
50 #undef  META_STYLE_LATIN
51 #define META_STYLE_LATIN( s, S, ds )                     \
52           STYLE_LATIN( s, S, c2cp, C2CP, ds,             \
53                        "petite capticals from capitals", \
54                        PETITE_CAPITALS_FROM_CAPITALS )   \
55           STYLE_LATIN( s, S, c2sc, C2SC, ds,             \
56                        "small capticals from capitals",  \
57                        SMALL_CAPITALS_FROM_CAPITALS )    \
58           STYLE_LATIN( s, S, ordn, ORDN, ds,             \
59                        "ordinals",                       \
60                        ORDINALS )                        \
61           STYLE_LATIN( s, S, pcap, PCAP, ds,             \
62                        "petite capitals",                \
63                        PETITE_CAPITALS )                 \
64           STYLE_LATIN( s, S, sinf, SINF, ds,             \
65                        "scientific inferiors",           \
66                        SCIENTIFIC_INFERIORS )            \
67           STYLE_LATIN( s, S, smcp, SMCP, ds,             \
68                        "small capitals",                 \
69                        SMALL_CAPITALS )                  \
70           STYLE_LATIN( s, S, subs, SUBS, ds,             \
71                        "subscript",                      \
72                        SUBSCRIPT )                       \
73           STYLE_LATIN( s, S, sups, SUPS, ds,             \
74                        "superscript",                    \
75                        SUPERSCRIPT )                     \
76           STYLE_LATIN( s, S, titl, TITL, ds,             \
77                        "titling",                        \
78                        TITLING )                         \
79           STYLE_LATIN( s, S, dflt, DFLT, ds,             \
80                        "default",                        \
81                        DEFAULT )
82
83   META_STYLE_LATIN( cyrl, CYRL, "Cyrillic" )
84
85   META_STYLE_LATIN( grek, GREK, "Greek" )
86
87   STYLE( hebr_dflt, HEBR_DFLT,
88          "Hebrew default style",
89          AF_WRITING_SYSTEM_LATIN,
90          AF_SCRIPT_HEBR,
91          AF_BLUE_STRINGSET_HEBR,
92          AF_COVERAGE_DEFAULT )
93   META_STYLE_LATIN( latn, LATN, "Latin" )
94
95   STYLE( deva_dflt, DEVA_DFLT,
96          "Devanagari default style",
97          AF_WRITING_SYSTEM_LATIN,
98          AF_SCRIPT_DEVA,
99          AF_BLUE_STRINGSET_DEVA,
100          AF_COVERAGE_DEFAULT )
101
102 #ifdef FT_OPTION_AUTOFIT2
103   STYLE( ltn2_dflt, LTN2_DFLT,
104          "Latin 2 default style",
105          AF_WRITING_SYSTEM_LATIN2,
106          AF_SCRIPT_LATN,
107          AF_BLUE_STRINGSET_LATN,
108          AF_COVERAGE_DEFAULT )
109 #endif
110
111   STYLE( none_dflt, NONE_DFLT,
112          "no style",
113          AF_WRITING_SYSTEM_DUMMY,
114          AF_SCRIPT_NONE,
115          (AF_Blue_Stringset)0,
116          AF_COVERAGE_DEFAULT )
117
118   STYLE( telu_dflt, TELU_DFLT,
119          "Telugu default style",
120          AF_WRITING_SYSTEM_LATIN,
121          AF_SCRIPT_TELU,
122          AF_BLUE_STRINGSET_TELU,
123          AF_COVERAGE_DEFAULT )
124
125 #ifdef AF_CONFIG_OPTION_INDIC
126
127   /* no blue stringset support for the Indic writing system yet */
128 #undef  STYLE_DEFAULT_INDIC
129 #define STYLE_DEFAULT_INDIC( s, S, d )    \
130           STYLE( s ## _dflt, S ## _DFLT,  \
131                  d " default style",      \
132                  AF_WRITING_SYSTEM_INDIC, \
133                  AF_SCRIPT_ ## S,         \
134                  (AF_Blue_Stringset)0,    \
135                  AF_COVERAGE_DEFAULT )
136
137   STYLE_DEFAULT_INDIC( beng, BENG, "Bengali" )
138   STYLE_DEFAULT_INDIC( gujr, GUJR, "Gujarati" )
139   STYLE_DEFAULT_INDIC( guru, GURU, "Gurmukhi" )
140   STYLE_DEFAULT_INDIC( knda, KNDA, "Kannada" )
141   STYLE_DEFAULT_INDIC( limb, LIMB, "Limbu" )
142   STYLE_DEFAULT_INDIC( mlym, MLYM, "Malayalam" )
143   STYLE_DEFAULT_INDIC( orya, ORYA, "Oriya" )
144   STYLE_DEFAULT_INDIC( sinh, SINH, "Sinhala" )
145   STYLE_DEFAULT_INDIC( sund, SUND, "Sundanese" )
146   STYLE_DEFAULT_INDIC( sylo, SYLO, "Syloti Nagri" )
147   STYLE_DEFAULT_INDIC( taml, TAML, "Tamil" )
148   STYLE_DEFAULT_INDIC( tibt, TIBT, "Tibetan" )
149
150 #endif /* AF_CONFIG_OPTION_INDIC */
151
152 #ifdef AF_CONFIG_OPTION_CJK
153
154   STYLE( hani_dflt, HANI_DFLT,
155          "CJKV ideographs default style",
156          AF_WRITING_SYSTEM_CJK,
157          AF_SCRIPT_HANI,
158          AF_BLUE_STRINGSET_HANI,
159          AF_COVERAGE_DEFAULT )
160
161 #endif /* AF_CONFIG_OPTION_CJK */
162
163
164 /* END */