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 META_STYLE_LATIN( grek, GREK, "Greek" ) 85 STYLE( hebr_dflt, HEBR_DFLT, 86 "Hebrew default style", 87 AF_WRITING_SYSTEM_LATIN, 88 AF_SCRIPT_HEBR, 89 AF_BLUE_STRINGSET_HEBR, 90 AF_COVERAGE_DEFAULT ) 91 META_STYLE_LATIN( latn, LATN, "Latin" ) 92 93 #ifdef FT_OPTION_AUTOFIT2 94 STYLE( ltn2_dflt, LTN2_DFLT, 95 "Latin 2 default style", 96 AF_WRITING_SYSTEM_LATIN2, 97 AF_SCRIPT_LATN, 98 AF_BLUE_STRINGSET_LATN, 99 AF_COVERAGE_DEFAULT ) 100 #endif 101 102 STYLE( none_dflt, NONE_DFLT, 103 "no style", 104 AF_WRITING_SYSTEM_DUMMY, 105 AF_SCRIPT_NONE, 106 (AF_Blue_Stringset)0, 107 AF_COVERAGE_DEFAULT ) 108 109 #ifdef AF_CONFIG_OPTION_INDIC 110 111 /* no blue stringset support for the Indic writing system yet */ 112 #undef STYLE_DEFAULT_INDIC 113 #define STYLE_DEFAULT_INDIC( s, S, d ) \ 114 STYLE( s ## _dflt, S ## _DFLT, \ 115 d " default style", \ 116 AF_WRITING_SYSTEM_INDIC, \ 117 AF_SCRIPT_ ## S, \ 118 (AF_Blue_Stringset)0, \ 119 AF_COVERAGE_DEFAULT ) 120 121 STYLE_DEFAULT_INDIC( beng, BENG, "Bengali" ) 122 STYLE_DEFAULT_INDIC( deva, DEVA, "Devanagari" ) 123 STYLE_DEFAULT_INDIC( gujr, GUJR, "Gujarati" ) 124 STYLE_DEFAULT_INDIC( guru, GURU, "Gurmukhi" ) 125 STYLE_DEFAULT_INDIC( knda, KNDA, "Kannada" ) 126 STYLE_DEFAULT_INDIC( limb, LIMB, "Limbu" ) 127 STYLE_DEFAULT_INDIC( mlym, MLYM, "Malayalam" ) 128 STYLE_DEFAULT_INDIC( orya, ORYA, "Oriya" ) 129 STYLE_DEFAULT_INDIC( sinh, SINH, "Sinhala" ) 130 STYLE_DEFAULT_INDIC( sund, SUND, "Sundanese" ) 131 STYLE_DEFAULT_INDIC( sylo, SYLO, "Syloti Nagri" ) 132 STYLE_DEFAULT_INDIC( taml, TAML, "Tamil" ) 133 STYLE_DEFAULT_INDIC( telu, TELU, "Telugu" ) 134 STYLE_DEFAULT_INDIC( tibt, TIBT, "Tibetan" ) 135 136 #endif /* AF_CONFIG_OPTION_INDIC */ 137 138 #ifdef AF_CONFIG_OPTION_CJK 139 140 STYLE( hani_dflt, HANI_DFLT, 141 "CJKV ideographs default style", 142 AF_WRITING_SYSTEM_CJK, 143 AF_SCRIPT_HANI, 144 AF_BLUE_STRINGSET_HANI, 145 AF_COVERAGE_DEFAULT ) 146 147 #endif /* AF_CONFIG_OPTION_CJK */ 148 149 150 /* END */ 151