Home | History | Annotate | Download | only in autofit
      1 /***************************************************************************/
      2 /*                                                                         */
      3 /*  afscript.h                                                             */
      4 /*                                                                         */
      5 /*    Auto-fitter scripts (specification only).                            */
      6 /*                                                                         */
      7 /*  Copyright 2013-2015 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 `SCRIPT' as needed.                         */
     21 
     22 
     23   /* Add new scripts here.  The first and second arguments are the    */
     24   /* script name in lowercase and uppercase, respectively, followed   */
     25   /* by a description string.  Then comes the corresponding HarfBuzz  */
     26   /* script name tag, followed by a string of standard characters (to */
     27   /* derive the standard width and height of stems).                  */
     28   /*                                                                  */
     29   /* Note that fallback scripts only have a default style, thus we    */
     30   /* use `HB_SCRIPT_INVALID' as the HarfBuzz script name tag for      */
     31   /* them.                                                            */
     32 
     33   SCRIPT( arab, ARAB,
     34           "Arabic",
     35           HB_SCRIPT_ARABIC,
     36           0x644, 0x62D, 0x640 ) /*    */
     37 
     38   SCRIPT( cyrl, CYRL,
     39           "Cyrillic",
     40           HB_SCRIPT_CYRILLIC,
     41           0x43E, 0x41E, 0x0 ) /*   */
     42 
     43   SCRIPT( deva, DEVA,
     44           "Devanagari",
     45           HB_SCRIPT_DEVANAGARI,
     46           0x920, 0x935, 0x91F ) /*    */
     47 
     48   SCRIPT( grek, GREK,
     49           "Greek",
     50           HB_SCRIPT_GREEK,
     51           0x3BF, 0x39F, 0x0 ) /*   */
     52 
     53   SCRIPT( hebr, HEBR,
     54           "Hebrew",
     55           HB_SCRIPT_HEBREW,
     56           0x5DD, 0x0, 0x0 ) /*  */
     57 
     58   /* only digit zero has a simple shape in the Lao script */
     59   SCRIPT( lao, LAO,
     60           "Lao",
     61           HB_SCRIPT_LAO,
     62           0xED0, 0x0, 0x0 ) /*  */
     63 
     64   SCRIPT( latn, LATN,
     65           "Latin",
     66           HB_SCRIPT_LATIN,
     67           'o', 'O', '0' )
     68 
     69   SCRIPT( latb, LATB,
     70           "Latin Subscript Fallback",
     71           HB_SCRIPT_INVALID,
     72           0x2092, 0x2080, 0x0 ) /*   */
     73 
     74   SCRIPT( latp, LATP,
     75           "Latin Superscript Fallback",
     76           HB_SCRIPT_INVALID,
     77           0x1D52, 0x1D3C, 0x2070 ) /*    */
     78 
     79   SCRIPT( none, NONE,
     80           "no script",
     81           HB_SCRIPT_INVALID,
     82           0x0, 0x0, 0x0 )
     83 
     84   /* there are no simple forms for letters; we thus use two digit shapes */
     85   SCRIPT( telu, TELU,
     86           "Telugu",
     87           HB_SCRIPT_TELUGU,
     88           0xC66, 0xC67, 0x0 ) /*   */
     89 
     90   SCRIPT( thai, THAI,
     91           "Thai",
     92           HB_SCRIPT_THAI,
     93           0xE32, 0xE45, 0xE50 ) /*    */
     94 
     95 #ifdef AF_CONFIG_OPTION_INDIC
     96 
     97   SCRIPT( beng, BENG,
     98           "Bengali",
     99           HB_SCRIPT_BENGALI,
    100           'o', 0x0, 0x0 ) /* XXX */
    101 
    102   SCRIPT( gujr, GUJR,
    103           "Gujarati",
    104           HB_SCRIPT_GUJARATI,
    105           'o', 0x0, 0x0 ) /* XXX */
    106 
    107   SCRIPT( guru, GURU,
    108           "Gurmukhi",
    109           HB_SCRIPT_GURMUKHI,
    110           'o', 0x0, 0x0 ) /* XXX */
    111 
    112   SCRIPT( knda, KNDA,
    113           "Kannada",
    114           HB_SCRIPT_KANNADA,
    115           'o', 0x0, 0x0 ) /* XXX */
    116 
    117   SCRIPT( limb, LIMB,
    118           "Limbu",
    119           HB_SCRIPT_LIMBU,
    120           'o', 0x0, 0x0 ) /* XXX */
    121 
    122   SCRIPT( mlym, MLYM,
    123           "Malayalam",
    124           HB_SCRIPT_MALAYALAM,
    125           'o', 0x0, 0x0 ) /* XXX */
    126 
    127   SCRIPT( orya, ORYA,
    128           "Oriya",
    129           HB_SCRIPT_ORIYA,
    130           'o', 0x0, 0x0 ) /* XXX */
    131 
    132   SCRIPT( sinh, SINH,
    133           "Sinhala",
    134           HB_SCRIPT_SINHALA,
    135           'o', 0x0, 0x0 ) /* XXX */
    136 
    137   SCRIPT( sund, SUND,
    138           "Sundanese",
    139           HB_SCRIPT_SUNDANESE,
    140           'o', 0x0, 0x0 ) /* XXX */
    141 
    142   SCRIPT( sylo, SYLO,
    143           "Syloti Nagri",
    144           HB_SCRIPT_SYLOTI_NAGRI,
    145           'o', 0x0, 0x0 ) /* XXX */
    146 
    147   SCRIPT( taml, TAML,
    148           "Tamil",
    149           HB_SCRIPT_TAMIL,
    150           'o', 0x0, 0x0 ) /* XXX */
    151 
    152   SCRIPT( tibt, TIBT,
    153           "Tibetan",
    154           HB_SCRIPT_TIBETAN,
    155           'o', 0x0, 0x0 ) /* XXX */
    156 
    157 #endif /* AF_CONFIG_OPTION_INDIC */
    158 
    159 #ifdef AF_CONFIG_OPTION_CJK
    160 
    161   SCRIPT( hani, HANI,
    162           "CJKV ideographs",
    163           HB_SCRIPT_HAN,
    164           0x7530, 0x56D7, 0x0 ) /*  */
    165 
    166 #endif /* AF_CONFIG_OPTION_CJK */
    167 
    168 
    169 /* END */
    170