19c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod/***************************************************************************/
29c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod/*                                                                         */
39c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod/*  afstyles.h                                                             */
49c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod/*                                                                         */
59c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod/*    Auto-fitter styles (specification only).                             */
69c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod/*                                                                         */
79c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod/*  Copyright 2013, 2014 by                                                */
89c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
99c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod/*                                                                         */
109c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod/*  This file is part of the FreeType project, and may only be used,       */
119c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod/*  modified, and distributed under the terms of the FreeType project      */
129c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
139c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod/*  this file you indicate that you have read the license and              */
149c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod/*  understand and accept it fully.                                        */
159c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod/*                                                                         */
169c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod/***************************************************************************/
179c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
189c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
199c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  /* The following part can be included multiple times. */
209c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  /* Define `STYLE' as needed.                          */
219c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
229c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
239c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  /* Add new styles here.  The first and second arguments are the  */
249c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  /* style name in lowercase and uppercase, respectively, followed */
259c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  /* by a description string.  The next arguments are the          */
269c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  /* corresponding writing system, script, blue stringset, and     */
279c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  /* coverage.                                                     */
289c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  /*                                                               */
299c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  /* Note that styles using `AF_COVERAGE_DEFAULT' should always    */
309c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  /* come after styles with other coverages.                       */
319c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  /*                                                               */
329c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  /* Example:                                                      */
339c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  /*                                                               */
349c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  /*   STYLE( cyrl_dflt, CYRL_DFLT,                                */
359c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  /*          "Cyrillic default style",                            */
369c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  /*          AF_WRITING_SYSTEM_LATIN,                             */
379c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  /*          AF_SCRIPT_CYRL,                                      */
389c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  /*          AF_BLUE_STRINGSET_CYRL,                              */
399c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  /*          AF_COVERAGE_DEFAULT )                                */
409c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
419c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod#undef  STYLE_LATIN
429c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod#define STYLE_LATIN( s, S, f, F, ds, df, C ) \
439c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod          STYLE( s ## _ ## f, S ## _ ## F,   \
449c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                 ds " " df " style",         \
459c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                 AF_WRITING_SYSTEM_LATIN,    \
469c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                 AF_SCRIPT_ ## S,            \
479c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                 AF_BLUE_STRINGSET_ ## S,    \
489c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                 AF_COVERAGE_ ## C )
499c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
509c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod#undef  META_STYLE_LATIN
519c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod#define META_STYLE_LATIN( s, S, ds )                     \
529c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod          STYLE_LATIN( s, S, c2cp, C2CP, ds,             \
539c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                       "petite capticals from capitals", \
549c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                       PETITE_CAPITALS_FROM_CAPITALS )   \
559c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod          STYLE_LATIN( s, S, c2sc, C2SC, ds,             \
569c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                       "small capticals from capitals",  \
579c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                       SMALL_CAPITALS_FROM_CAPITALS )    \
589c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod          STYLE_LATIN( s, S, ordn, ORDN, ds,             \
599c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                       "ordinals",                       \
609c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                       ORDINALS )                        \
619c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod          STYLE_LATIN( s, S, pcap, PCAP, ds,             \
629c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                       "petite capitals",                \
639c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                       PETITE_CAPITALS )                 \
649c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod          STYLE_LATIN( s, S, sinf, SINF, ds,             \
659c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                       "scientific inferiors",           \
669c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                       SCIENTIFIC_INFERIORS )            \
679c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod          STYLE_LATIN( s, S, smcp, SMCP, ds,             \
689c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                       "small capitals",                 \
699c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                       SMALL_CAPITALS )                  \
709c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod          STYLE_LATIN( s, S, subs, SUBS, ds,             \
719c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                       "subscript",                      \
729c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                       SUBSCRIPT )                       \
739c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod          STYLE_LATIN( s, S, sups, SUPS, ds,             \
749c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                       "superscript",                    \
759c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                       SUPERSCRIPT )                     \
769c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod          STYLE_LATIN( s, S, titl, TITL, ds,             \
779c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                       "titling",                        \
789c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                       TITLING )                         \
799c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod          STYLE_LATIN( s, S, dflt, DFLT, ds,             \
809c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                       "default",                        \
819c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                       DEFAULT )
829c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
839c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  META_STYLE_LATIN( cyrl, CYRL, "Cyrillic" )
849c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
859c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  META_STYLE_LATIN( grek, GREK, "Greek" )
869c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
879c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  STYLE( hebr_dflt, HEBR_DFLT,
889c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         "Hebrew default style",
899c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         AF_WRITING_SYSTEM_LATIN,
909c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         AF_SCRIPT_HEBR,
919c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         AF_BLUE_STRINGSET_HEBR,
929c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         AF_COVERAGE_DEFAULT )
939c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  META_STYLE_LATIN( latn, LATN, "Latin" )
949c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
959c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  STYLE( deva_dflt, DEVA_DFLT,
969c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         "Devanagari default style",
979c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         AF_WRITING_SYSTEM_LATIN,
989c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         AF_SCRIPT_DEVA,
999c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         AF_BLUE_STRINGSET_DEVA,
1009c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         AF_COVERAGE_DEFAULT )
1019c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
1029c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod#ifdef FT_OPTION_AUTOFIT2
1039c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  STYLE( ltn2_dflt, LTN2_DFLT,
1049c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         "Latin 2 default style",
1059c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         AF_WRITING_SYSTEM_LATIN2,
1069c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         AF_SCRIPT_LATN,
1079c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         AF_BLUE_STRINGSET_LATN,
1089c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         AF_COVERAGE_DEFAULT )
1099c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod#endif
1109c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
1119c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  STYLE( none_dflt, NONE_DFLT,
1129c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         "no style",
1139c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         AF_WRITING_SYSTEM_DUMMY,
1149c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         AF_SCRIPT_NONE,
1159c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         (AF_Blue_Stringset)0,
1169c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         AF_COVERAGE_DEFAULT )
1179c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
1189c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod#ifdef AF_CONFIG_OPTION_INDIC
1199c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
1209c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  /* no blue stringset support for the Indic writing system yet */
1219c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod#undef  STYLE_DEFAULT_INDIC
1229c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod#define STYLE_DEFAULT_INDIC( s, S, d )    \
1239c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod          STYLE( s ## _dflt, S ## _DFLT,  \
1249c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                 d " default style",      \
1259c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                 AF_WRITING_SYSTEM_INDIC, \
1269c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                 AF_SCRIPT_ ## S,         \
1279c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                 (AF_Blue_Stringset)0,    \
1289c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod                 AF_COVERAGE_DEFAULT )
1299c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
1309c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  STYLE_DEFAULT_INDIC( beng, BENG, "Bengali" )
1319c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  STYLE_DEFAULT_INDIC( gujr, GUJR, "Gujarati" )
1329c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  STYLE_DEFAULT_INDIC( guru, GURU, "Gurmukhi" )
1339c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  STYLE_DEFAULT_INDIC( knda, KNDA, "Kannada" )
1349c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  STYLE_DEFAULT_INDIC( limb, LIMB, "Limbu" )
1359c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  STYLE_DEFAULT_INDIC( mlym, MLYM, "Malayalam" )
1369c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  STYLE_DEFAULT_INDIC( orya, ORYA, "Oriya" )
1379c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  STYLE_DEFAULT_INDIC( sinh, SINH, "Sinhala" )
1389c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  STYLE_DEFAULT_INDIC( sund, SUND, "Sundanese" )
1399c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  STYLE_DEFAULT_INDIC( sylo, SYLO, "Syloti Nagri" )
1409c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  STYLE_DEFAULT_INDIC( taml, TAML, "Tamil" )
1419c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  STYLE_DEFAULT_INDIC( telu, TELU, "Telugu" )
1429c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  STYLE_DEFAULT_INDIC( tibt, TIBT, "Tibetan" )
1439c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
1449c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod#endif /* AF_CONFIG_OPTION_INDIC */
1459c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
1469c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod#ifdef AF_CONFIG_OPTION_CJK
1479c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
1489c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod  STYLE( hani_dflt, HANI_DFLT,
1499c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         "CJKV ideographs default style",
1509c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         AF_WRITING_SYSTEM_CJK,
1519c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         AF_SCRIPT_HANI,
1529c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         AF_BLUE_STRINGSET_HANI,
1539c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod         AF_COVERAGE_DEFAULT )
1549c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
1559c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod#endif /* AF_CONFIG_OPTION_CJK */
1569c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
1579c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod
1589c745321260bb728ab1cd1c8fd5f075854b2ad49Behdad Esfahbod/* END */
159