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#ifdef AF_CONFIG_OPTION_INDIC 119 120 /* no blue stringset support for the Indic writing system yet */ 121#undef STYLE_DEFAULT_INDIC 122#define STYLE_DEFAULT_INDIC( s, S, d ) \ 123 STYLE( s ## _dflt, S ## _DFLT, \ 124 d " default style", \ 125 AF_WRITING_SYSTEM_INDIC, \ 126 AF_SCRIPT_ ## S, \ 127 (AF_Blue_Stringset)0, \ 128 AF_COVERAGE_DEFAULT ) 129 130 STYLE_DEFAULT_INDIC( beng, BENG, "Bengali" ) 131 STYLE_DEFAULT_INDIC( gujr, GUJR, "Gujarati" ) 132 STYLE_DEFAULT_INDIC( guru, GURU, "Gurmukhi" ) 133 STYLE_DEFAULT_INDIC( knda, KNDA, "Kannada" ) 134 STYLE_DEFAULT_INDIC( limb, LIMB, "Limbu" ) 135 STYLE_DEFAULT_INDIC( mlym, MLYM, "Malayalam" ) 136 STYLE_DEFAULT_INDIC( orya, ORYA, "Oriya" ) 137 STYLE_DEFAULT_INDIC( sinh, SINH, "Sinhala" ) 138 STYLE_DEFAULT_INDIC( sund, SUND, "Sundanese" ) 139 STYLE_DEFAULT_INDIC( sylo, SYLO, "Syloti Nagri" ) 140 STYLE_DEFAULT_INDIC( taml, TAML, "Tamil" ) 141 STYLE_DEFAULT_INDIC( telu, TELU, "Telugu" ) 142 STYLE_DEFAULT_INDIC( tibt, TIBT, "Tibetan" ) 143 144#endif /* AF_CONFIG_OPTION_INDIC */ 145 146#ifdef AF_CONFIG_OPTION_CJK 147 148 STYLE( hani_dflt, HANI_DFLT, 149 "CJKV ideographs default style", 150 AF_WRITING_SYSTEM_CJK, 151 AF_SCRIPT_HANI, 152 AF_BLUE_STRINGSET_HANI, 153 AF_COVERAGE_DEFAULT ) 154 155#endif /* AF_CONFIG_OPTION_CJK */ 156 157 158/* END */ 159