shithub: freetype+ttf2subf

ref: f9ca2bb58a3c8e70cf5e0e0d2580c50385c48df0
dir: /src/type1z/z1tokens.h/

View raw version
/*******************************************************************
 *
 *  t1tokens.h
 *
 *  Type 1 tokens definition
 *
 *  Copyright 2000 David Turner, Robert Wilhelm and Werner Lemberg.
 *
 *  This file is part of the FreeType project, and may only be used
 *  modified and distributed under the terms of the FreeType project
 *  license, LICENSE.TXT. By continuing to use, modify or distribute
 *  this file you indicate that you have read the license and
 *  understand and accept it fully.
 *
 *  This file only contains macros that are expanded when compiling
 *  the "t1load.c" source file.
 *
 ******************************************************************/

#undef  T1TYPE
#define T1TYPE  T1_FontInfo

  Z1_FONTINFO_STRING( "version", version )
  Z1_FONTINFO_STRING( "Notice", notice )
  Z1_FONTINFO_STRING( "FullName", full_name )
  Z1_FONTINFO_STRING( "FamilyName", family_name )
  Z1_FONTINFO_STRING( "Weight", weight )

  Z1_FONTINFO_NUM( "ItalicAngle", italic_angle )
  Z1_FONTINFO_BOOL( "isFixedPitch", is_fixed_pitch )
  Z1_FONTINFO_NUM( "UnderlinePosition", underline_position )
  Z1_FONTINFO_NUM( "UnderlineThickness", underline_thickness )

#undef  T1TYPE
#define T1TYPE  T1_Private

  Z1_PRIVATE_NUM  ( "UniqueID", unique_id )
  Z1_PRIVATE_NUM  ( "lenIV", lenIV )
  Z1_PRIVATE_NUM  ( "LanguageGroup", language_group )
  Z1_PRIVATE_NUM  ( "password", password )
  
  Z1_PRIVATE_FIXED( "BlueScale", blue_scale )
  Z1_PRIVATE_NUM  ( "BlueShift", blue_shift )
  Z1_PRIVATE_NUM  ( "BlueFuzz",  blue_fuzz )
  
  Z1_PRIVATE_NUM_TABLE( "BlueValues", blue_values, 14, num_blue_values )
  Z1_PRIVATE_NUM_TABLE( "OtherBlues", other_blues, 10, num_other_blues )
  Z1_PRIVATE_NUM_TABLE( "FamilyBlues", family_blues, 14, num_family_blues )
  Z1_PRIVATE_NUM_TABLE( "FamilyOtherBlues", family_other_blues, 10, num_family_other_blues )

  Z1_PRIVATE_NUM_TABLE2( "StdHW", standard_width,  1 )
  Z1_PRIVATE_NUM_TABLE2( "StdVW", standard_height, 1 )
  Z1_PRIVATE_NUM_TABLE2( "MinFeature", min_feature, 2 )
  
  Z1_PRIVATE_NUM_TABLE ( "StemSnapH", snap_widths, 12, num_snap_widths )
  Z1_PRIVATE_NUM_TABLE ( "StemSnapV", snap_heights, 12, num_snap_heights )

#undef  T1TYPE
#define T1TYPE  T1_Font

  Z1_TOPDICT_NUM( "PaintType", paint_type )
  Z1_TOPDICT_NUM( "FontType", font_type )
  Z1_TOPDICT_NUM( "StrokeWidth", stroke_width )

#if 0
 /* define the font info dictionary parsing callbacks */
#undef  FACE
#define FACE  (face->type1.font_info)

  PARSE_STRING("version",version)
  PARSE_STRING("Notice",notice)
  PARSE_STRING("FullName",full_name)
  PARSE_STRING("FamilyName",family_name)
  PARSE_STRING("Weight",weight)

  PARSE_INT("ItalicAngle",italic_angle)
  PARSE_BOOL("isFixedPitch",is_fixed_pitch)
  PARSE_NUM("UnderlinePosition",underline_position,FT_Short)
  PARSE_NUM("UnderlineThickness",underline_thickness,FT_UShort)

 /* define the private dict parsing callbacks */

#undef  FACE
#define FACE  (face->type1.private_dict)

   PARSE_INT("UniqueID",unique_id)
   PARSE_INT("lenIV",lenIV)

   PARSE_COORDS( "BlueValues", num_blues,       14, blue_values)
   PARSE_COORDS( "OtherBlues", num_other_blues, 10, other_blues)

   PARSE_COORDS( "FamilyBlues", num_family_blues,       14, family_blues)
   PARSE_COORDS( "FamilyOtherBlues", num_family_other_blues, 10, family_other_blues)

   PARSE_FIXED( "BlueScale", blue_scale)
   PARSE_INT( "BlueShift", blue_shift)

   PARSE_INT( "BlueFuzz", blue_fuzz)

   PARSE_COORDS2( "StdHW", 1, standard_width  )
   PARSE_COORDS2( "StdVW", 1, standard_height )

   PARSE_COORDS( "StemSnapH", num_snap_widths,  12, stem_snap_widths )
   PARSE_COORDS( "StemSnapV", num_snap_heights, 12, stem_snap_heights )

   PARSE_INT( "LanguageGroup", language_group )
   PARSE_INT( "password", password )
   PARSE_COORDS2( "MinFeature", 2, min_feature )

 /* define the top-level dictionary parsing callbacks */

#undef  FACE
#define FACE  (face->type1)


/* PARSE_STRING( "FontName", font_name ) -- handled by special routine */
   PARSE_NUM( "PaintType", paint_type, FT_Byte )
   PARSE_NUM( "FontType", font_type, FT_Byte )
   PARSE_FIXEDS2( "FontMatrix", 4, font_matrix )
/*  PARSE_COORDS2( "FontBBox", 4, font_bbox ) -- handled by special func */
   PARSE_INT( "StrokeWidth", stroke_width )

#undef FACE
#endif