Home | History | Annotate | Download | only in type1
      1 /***************************************************************************/
      2 /*                                                                         */
      3 /*  t1tokens.h                                                             */
      4 /*                                                                         */
      5 /*    Type 1 tokenizer (specification).                                    */
      6 /*                                                                         */
      7 /*  Copyright 1996-2001, 2002, 2003, 2004, 2006, 2008, 2009 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 #undef  FT_STRUCTURE
     20 #define FT_STRUCTURE  PS_FontInfoRec
     21 #undef  T1CODE
     22 #define T1CODE        T1_FIELD_LOCATION_FONT_INFO
     23 
     24   T1_FIELD_STRING( "version",            version,
     25                    T1_FIELD_DICT_FONTDICT )
     26   T1_FIELD_STRING( "Notice",             notice,
     27                    T1_FIELD_DICT_FONTDICT )
     28   T1_FIELD_STRING( "FullName",           full_name,
     29                    T1_FIELD_DICT_FONTDICT )
     30   T1_FIELD_STRING( "FamilyName",         family_name,
     31                    T1_FIELD_DICT_FONTDICT )
     32   T1_FIELD_STRING( "Weight",             weight,
     33                    T1_FIELD_DICT_FONTDICT )
     34 
     35   /* we use pointers to detect modifications made by synthetic fonts */
     36   T1_FIELD_NUM   ( "ItalicAngle",        italic_angle,
     37                    T1_FIELD_DICT_FONTDICT )
     38   T1_FIELD_BOOL  ( "isFixedPitch",       is_fixed_pitch,
     39                    T1_FIELD_DICT_FONTDICT )
     40   T1_FIELD_NUM   ( "UnderlinePosition",  underline_position,
     41                    T1_FIELD_DICT_FONTDICT )
     42   T1_FIELD_NUM   ( "UnderlineThickness", underline_thickness,
     43                    T1_FIELD_DICT_FONTDICT )
     44 
     45 #undef  FT_STRUCTURE
     46 #define FT_STRUCTURE  PS_FontExtraRec
     47 #undef  T1CODE
     48 #define T1CODE        T1_FIELD_LOCATION_FONT_EXTRA
     49 
     50   T1_FIELD_NUM   ( "FSType", fs_type,
     51                    T1_FIELD_DICT_FONTDICT )
     52 
     53 #undef  FT_STRUCTURE
     54 #define FT_STRUCTURE  PS_PrivateRec
     55 #undef  T1CODE
     56 #define T1CODE        T1_FIELD_LOCATION_PRIVATE
     57 
     58   T1_FIELD_NUM       ( "UniqueID",         unique_id,
     59                        T1_FIELD_DICT_FONTDICT | T1_FIELD_DICT_PRIVATE )
     60   T1_FIELD_NUM       ( "lenIV",            lenIV,
     61                        T1_FIELD_DICT_PRIVATE )
     62   T1_FIELD_NUM       ( "LanguageGroup",    language_group,
     63                        T1_FIELD_DICT_PRIVATE )
     64   T1_FIELD_NUM       ( "password",         password,
     65                        T1_FIELD_DICT_PRIVATE )
     66 
     67   T1_FIELD_FIXED_1000( "BlueScale",        blue_scale,
     68                        T1_FIELD_DICT_PRIVATE )
     69   T1_FIELD_NUM       ( "BlueShift",        blue_shift,
     70                        T1_FIELD_DICT_PRIVATE )
     71   T1_FIELD_NUM       ( "BlueFuzz",         blue_fuzz,
     72                        T1_FIELD_DICT_PRIVATE )
     73 
     74   T1_FIELD_NUM_TABLE ( "BlueValues",       blue_values,        14,
     75                        T1_FIELD_DICT_PRIVATE )
     76   T1_FIELD_NUM_TABLE ( "OtherBlues",       other_blues,        10,
     77                        T1_FIELD_DICT_PRIVATE )
     78   T1_FIELD_NUM_TABLE ( "FamilyBlues",      family_blues,       14,
     79                        T1_FIELD_DICT_PRIVATE )
     80   T1_FIELD_NUM_TABLE ( "FamilyOtherBlues", family_other_blues, 10,
     81                        T1_FIELD_DICT_PRIVATE )
     82 
     83   T1_FIELD_NUM_TABLE2( "StdHW",            standard_width,      1,
     84                        T1_FIELD_DICT_PRIVATE )
     85   T1_FIELD_NUM_TABLE2( "StdVW",            standard_height,     1,
     86                        T1_FIELD_DICT_PRIVATE )
     87   T1_FIELD_NUM_TABLE2( "MinFeature",       min_feature,         2,
     88                        T1_FIELD_DICT_PRIVATE )
     89 
     90   T1_FIELD_NUM_TABLE ( "StemSnapH",        snap_widths,        12,
     91                        T1_FIELD_DICT_PRIVATE )
     92   T1_FIELD_NUM_TABLE ( "StemSnapV",        snap_heights,       12,
     93                        T1_FIELD_DICT_PRIVATE )
     94 
     95   T1_FIELD_FIXED     ( "ExpansionFactor",  expansion_factor,
     96                        T1_FIELD_DICT_PRIVATE )
     97   T1_FIELD_BOOL      ( "ForceBold",        force_bold,
     98                        T1_FIELD_DICT_PRIVATE )
     99 
    100 
    101 #undef  FT_STRUCTURE
    102 #define FT_STRUCTURE  T1_FontRec
    103 #undef  T1CODE
    104 #define T1CODE        T1_FIELD_LOCATION_FONT_DICT
    105 
    106   T1_FIELD_KEY  ( "FontName",    font_name,    T1_FIELD_DICT_FONTDICT )
    107   T1_FIELD_NUM  ( "PaintType",   paint_type,   T1_FIELD_DICT_FONTDICT )
    108   T1_FIELD_NUM  ( "FontType",    font_type,    T1_FIELD_DICT_FONTDICT )
    109   T1_FIELD_FIXED( "StrokeWidth", stroke_width, T1_FIELD_DICT_FONTDICT )
    110 
    111 
    112 #undef  FT_STRUCTURE
    113 #define FT_STRUCTURE  FT_BBox
    114 #undef  T1CODE
    115 #define T1CODE        T1_FIELD_LOCATION_BBOX
    116 
    117   T1_FIELD_BBOX( "FontBBox", xMin, T1_FIELD_DICT_FONTDICT )
    118 
    119 
    120 #ifndef T1_CONFIG_OPTION_NO_MM_SUPPORT
    121 
    122 #undef  FT_STRUCTURE
    123 #define FT_STRUCTURE  T1_FaceRec
    124 #undef  T1CODE
    125 #define T1CODE        T1_FIELD_LOCATION_FACE
    126 
    127   T1_FIELD_NUM( "NDV", ndv_idx, T1_FIELD_DICT_PRIVATE )
    128   T1_FIELD_NUM( "CDV", cdv_idx, T1_FIELD_DICT_PRIVATE )
    129 
    130 
    131 #undef  FT_STRUCTURE
    132 #define FT_STRUCTURE  PS_BlendRec
    133 #undef  T1CODE
    134 #define T1CODE        T1_FIELD_LOCATION_BLEND
    135 
    136   T1_FIELD_NUM_TABLE( "DesignVector", default_design_vector,
    137                       T1_MAX_MM_DESIGNS, T1_FIELD_DICT_FONTDICT )
    138 
    139 
    140 #endif /* T1_CONFIG_OPTION_NO_MM_SUPPORT */
    141 
    142 
    143 /* END */
    144