t42parse.c File Reference

#include "t42parse.h"
#include "t42error.h"

Go to the source code of this file.

Defines

#define FT_COMPONENT   trace_t42
#define FT_STRUCTURE   T1_FontInfo
#define T1CODE   T1_FIELD_LOCATION_FONT_INFO
#define FT_STRUCTURE   PS_FontExtraRec
#define T1CODE   T1_FIELD_LOCATION_FONT_EXTRA
#define FT_STRUCTURE   T1_FontRec
#define T1CODE   T1_FIELD_LOCATION_FONT_DICT
#define FT_STRUCTURE   FT_BBox
#define T1CODE   T1_FIELD_LOCATION_BBOX
#define T1_Add_Table(p, i, o, l)   (p)->funcs.add( (p), i, o, l )
#define T1_Done_Table(p)
#define T1_Release_Table(p)
#define T1_Skip_Spaces(p)   (p)->root.funcs.skip_spaces( &(p)->root )
#define T1_Skip_PS_Token(p)   (p)->root.funcs.skip_PS_token( &(p)->root )
#define T1_ToInt(p)   (p)->root.funcs.to_int( &(p)->root )
#define T1_ToBytes(p, b, m, n, d)   (p)->root.funcs.to_bytes( &(p)->root, b, m, n, d )
#define T1_ToFixedArray(p, m, f, t)   (p)->root.funcs.to_fixed_array( &(p)->root, m, f, t )
#define T1_ToToken(p, t)   (p)->root.funcs.to_token( &(p)->root, t )
#define T1_Load_Field(p, f, o, m, pf)   (p)->root.funcs.load_field( &(p)->root, f, o, m, pf )
#define T1_Load_Field_Table(p, f, o, m, pf)   (p)->root.funcs.load_field_table( &(p)->root, f, o, m, pf )

Typedefs

typedef enum T42_Load_Status_ T42_Load_Status

Enumerations

enum  T42_Load_Status_

Functions

static void t42_parse_font_matrix (T42_Face face, T42_Loader loader)
static void t42_parse_encoding (T42_Face face, T42_Loader loader)
static void t42_parse_charstrings (T42_Face face, T42_Loader loader)
static void t42_parse_sfnts (T42_Face face, T42_Loader loader)
 t42_parser_init (T42_Parser parser, FT_Stream stream, FT_Memory memory, PSAux_Service psaux)
 t42_parser_done (T42_Parser parser)
static int t42_is_space (FT_Byte c)
static FT_Error t42_load_keyword (T42_Face face, T42_Loader loader, T1_Field field)
 t42_parse_dict (T42_Face face, T42_Loader loader, FT_Byte *base, FT_Long size)
 t42_loader_init (T42_Loader loader, T42_Face face)
 t42_loader_done (T42_Loader loader)

Variables

static const T1_FieldRec t42_keywords []


Define Documentation

#define FT_COMPONENT   trace_t42

Definition at line 33 of file t42parse.c.

#define FT_STRUCTURE   FT_BBox

#define FT_STRUCTURE   T1_FontRec

#define FT_STRUCTURE   PS_FontExtraRec

#define FT_STRUCTURE   T1_FontInfo

#define T1_Add_Table ( p,
i,
o,
l   )     (p)->funcs.add( (p), i, o, l )

Definition at line 105 of file t42parse.c.

#define T1_Done_Table ( p   ) 

Value:

do                        \
          {                         \
            if ( (p)->funcs.done )  \
              (p)->funcs.done( p ); \
          } while ( 0 )

Definition at line 106 of file t42parse.c.

#define T1_Load_Field ( p,
f,
o,
m,
pf   )     (p)->root.funcs.load_field( &(p)->root, f, o, m, pf )

Definition at line 132 of file t42parse.c.

#define T1_Load_Field_Table ( p,
f,
o,
m,
pf   )     (p)->root.funcs.load_field_table( &(p)->root, f, o, m, pf )

Definition at line 134 of file t42parse.c.

#define T1_Release_Table ( p   ) 

Value:

do                           \
          {                            \
            if ( (p)->funcs.release )  \
              (p)->funcs.release( p ); \
          } while ( 0 )

Definition at line 112 of file t42parse.c.

#define T1_Skip_PS_Token ( p   )     (p)->root.funcs.skip_PS_token( &(p)->root )

Definition at line 120 of file t42parse.c.

#define T1_Skip_Spaces ( p   )     (p)->root.funcs.skip_spaces( &(p)->root )

Definition at line 119 of file t42parse.c.

#define T1_ToBytes ( p,
b,
m,
n,
d   )     (p)->root.funcs.to_bytes( &(p)->root, b, m, n, d )

Definition at line 124 of file t42parse.c.

Referenced by t42_parse_sfnts().

#define T1_ToFixedArray ( p,
m,
f,
t   )     (p)->root.funcs.to_fixed_array( &(p)->root, m, f, t )

Definition at line 127 of file t42parse.c.

#define T1_ToInt ( p   )     (p)->root.funcs.to_int( &(p)->root )

Definition at line 122 of file t42parse.c.

#define T1_ToToken ( p,
t   )     (p)->root.funcs.to_token( &(p)->root, t )

Definition at line 129 of file t42parse.c.

#define T1CODE   T1_FIELD_LOCATION_BBOX

#define T1CODE   T1_FIELD_LOCATION_FONT_DICT

#define T1CODE   T1_FIELD_LOCATION_FONT_EXTRA

#define T1CODE   T1_FIELD_LOCATION_FONT_INFO


Typedef Documentation

typedef enum T42_Load_Status_ T42_Load_Status


Enumeration Type Documentation

enum T42_Load_Status_

Definition at line 481 of file t42parse.c.


Function Documentation

static int t42_is_space ( FT_Byte  c  )  [static]

Definition at line 239 of file t42parse.c.

Referenced by t42_parse_charstrings(), and t42_parse_encoding().

static FT_Error t42_load_keyword ( T42_Face  face,
T42_Loader  loader,
T1_Field  field 
) [static]

Definition at line 959 of file t42parse.c.

References error, T1_FieldRec_::location, T42_Loader_::parser, T1_FieldRec_::reader, T1_FIELD_LOCATION_BBOX, T1_FIELD_LOCATION_FONT_EXTRA, T1_FIELD_LOCATION_FONT_INFO, T1_FIELD_TYPE_CALLBACK, T1_FIELD_TYPE_FIXED_ARRAY, T1_FIELD_TYPE_INTEGER_ARRAY, T1_Load_Field, T1_Load_Field_Table, and T1_FieldRec_::type.

Referenced by t42_parse_dict().

t42_loader_done ( T42_Loader  loader  ) 

Definition at line 1162 of file t42parse.c.

References T1_Release_Table, and t42_parser_done().

Referenced by T42_Open_Face().

t42_loader_init ( T42_Loader  loader,
T42_Face  face 
)

Definition at line 1145 of file t42parse.c.

References FT_MEM_ZERO, and FT_UNUSED.

Referenced by T42_Open_Face().

static void t42_parse_charstrings ( T42_Face  face,
T42_Loader  loader 
) [static]

Definition at line 696 of file t42parse.c.

References T42_Loader_::charstrings, error, FT_ERROR, ft_isdigit, ft_strcmp, T42_Loader_::glyph_names, PS_Table_FuncsRec_::init, len, n, T42_Loader_::num_glyphs, T42_Loader_::parser, PSAux_ServiceRec_::ps_table_funcs, T42_Loader_::swap_table, T1_Add_Table, T1_Skip_PS_Token, T1_Skip_Spaces, T1_ToInt, t42_is_space(), and void.

t42_parse_dict ( T42_Face  face,
T42_Loader  loader,
FT_Byte base,
FT_Long  size 
)

Definition at line 1014 of file t42parse.c.

References ft_memcmp, ft_strlen, ft_strncmp, i, if(), len, name, root, T1_Skip_PS_Token, T1_Skip_Spaces, T1_TOKEN_TYPE_ARRAY, T1_ToToken, t42_keywords, t42_load_keyword(), and T1_TokenRec_::type.

Referenced by T42_Open_Face().

static void t42_parse_encoding ( T42_Face  face,
T42_Loader  loader 
) [static]

Definition at line 292 of file t42parse.c.

References T42_Loader_::encoding_table, error, FT_Bool, FT_ERROR, ft_isdigit, FT_NEW_ARRAY, FT_SET_ERROR, ft_strncmp, FT_TRACE6, PS_Table_FuncsRec_::init, len, n, T42_Loader_::num_chars, T42_Loader_::parser, PSAux_ServiceRec_::ps_table_funcs, T1_Add_Table, T1_ENCODING_TYPE_ARRAY, T1_ENCODING_TYPE_EXPERT, T1_ENCODING_TYPE_ISOLATIN1, T1_ENCODING_TYPE_STANDARD, T1_Skip_PS_Token, T1_Skip_Spaces, T1_ToInt, and t42_is_space().

static void t42_parse_font_matrix ( T42_Face  face,
T42_Loader  loader 
) [static]

Definition at line 248 of file t42parse.c.

References FT_ABS, FT_DivFix(), RooFitShortHand::L(), T42_Loader_::parser, root, T1_ToFixedArray, and x10000L.

static void t42_parse_sfnts ( T42_Face  face,
T42_Loader  loader 
) [static]

Definition at line 491 of file t42parse.c.

References BEFORE_START, BEFORE_TABLE_DIR, error, FT_Bool, FT_ERROR, FT_FREE, ft_isdigit, FT_PEEK_ULONG, FT_REALLOC, i, len, n, NULL, OTHER_TABLES, p, T42_Loader_::parser, T1_Skip_PS_Token, T1_Skip_Spaces, T1_ToBytes, T1_ToInt, and void.

t42_parser_done ( T42_Parser  parser  ) 

Definition at line 225 of file t42parse.c.

References FT_FREE.

Referenced by t42_loader_done().

t42_parser_init ( T42_Parser  parser,
FT_Stream  stream,
FT_Memory  memory,
PSAux_Service  psaux 
)

Definition at line 141 of file t42parse.c.

References error, FT_ALLOC, FT_FRAME_ENTER, FT_FRAME_EXIT, FT_FREE, ft_memcmp, FT_STREAM_READ, FT_STREAM_SEEK, FT_STREAM_SKIP, FT_TRACE2, if(), RooFitShortHand::L(), and size.

Referenced by T42_Open_Face().


Variable Documentation

const T1_FieldRec t42_keywords[] [static]

Definition at line 55 of file t42parse.c.

Referenced by t42_parse_dict().


Generated on Tue Jul 5 15:58:27 2011 for ROOT_528-00b_version by  doxygen 1.5.1