zenilib  0.5.3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
psobjs.c File Reference
#include <ft2build.h>
#include <FT_INTERNAL_POSTSCRIPT_AUX_H>
#include <FT_INTERNAL_DEBUG_H>
#include <FT_INTERNAL_CALC_H>
#include "psobjs.h"
#include "psconv.h"
#include "psauxerr.h"

Go to the source code of this file.

Macros

#define FT_COMPONENT   trace_psobjs
 
#define IS_OCTAL_DIGIT(c)   ( '0' <= (c) && (c) <= '7' )
 
#define T1_MAX_TABLE_ELEMENTS   32
 

Functions

 ps_parser_done (PS_Parser parser)
 
 ps_parser_init (PS_Parser parser, FT_Byte *base, FT_Byte *limit, FT_Memory memory)
 
 ps_parser_load_field (PS_Parser parser, const T1_Field field, void **objects, FT_UInt max_objects, FT_ULong *pflags)
 
 ps_parser_load_field_table (PS_Parser parser, const T1_Field field, void **objects, FT_UInt max_objects, FT_ULong *pflags)
 
 ps_parser_skip_PS_token (PS_Parser parser)
 
 ps_parser_skip_spaces (PS_Parser parser)
 
 ps_parser_to_bytes (PS_Parser parser, FT_Byte *bytes, FT_Offset max_bytes, FT_Long *pnum_bytes, FT_Bool delimiters)
 
 ps_parser_to_coord_array (PS_Parser parser, FT_Int max_coords, FT_Short *coords)
 
 ps_parser_to_fixed (PS_Parser parser, FT_Int power_ten)
 
 ps_parser_to_fixed_array (PS_Parser parser, FT_Int max_values, FT_Fixed *values, FT_Int power_ten)
 
 ps_parser_to_int (PS_Parser parser)
 
 ps_parser_to_token (PS_Parser parser, T1_Token token)
 
 ps_parser_to_token_array (PS_Parser parser, T1_Token tokens, FT_UInt max_tokens, FT_Int *pnum_tokens)
 
 ps_table_add (PS_Table table, FT_Int idx, void *object, FT_PtrDist length)
 
 ps_table_done (PS_Table table)
 
 ps_table_new (PS_Table table, FT_Int count, FT_Memory memory)
 
 ps_table_release (PS_Table table)
 
static int ps_tobool (FT_Byte **acur, FT_Byte *limit)
 
static FT_Int ps_tocoordarray (FT_Byte **acur, FT_Byte *limit, FT_Int max_coords, FT_Short *coords)
 
static FT_Int ps_tofixedarray (FT_Byte **acur, FT_Byte *limit, FT_Int max_values, FT_Fixed *values, FT_Int power_ten)
 
static FT_Error reallocate_t1_table (PS_Table table, FT_Long new_size)
 
static void shift_elements (PS_Table table, FT_Byte *old_base)
 
static void skip_comment (FT_Byte **acur, FT_Byte *limit)
 
static FT_Error skip_literal_string (FT_Byte **acur, FT_Byte *limit)
 
static FT_Error skip_procedure (FT_Byte **acur, FT_Byte *limit)
 
static void skip_spaces (FT_Byte **acur, FT_Byte *limit)
 
static FT_Error skip_string (FT_Byte **acur, FT_Byte *limit)
 
 t1_builder_add_contour (T1_Builder builder)
 
 t1_builder_add_point (T1_Builder builder, FT_Pos x, FT_Pos y, FT_Byte flag)
 
 t1_builder_add_point1 (T1_Builder builder, FT_Pos x, FT_Pos y)
 
 t1_builder_check_points (T1_Builder builder, FT_Int count)
 
 t1_builder_close_contour (T1_Builder builder)
 
 t1_builder_done (T1_Builder builder)
 
 t1_builder_init (T1_Builder builder, FT_Face face, FT_Size size, FT_GlyphSlot glyph, FT_Bool hinting)
 
 t1_builder_start_point (T1_Builder builder, FT_Pos x, FT_Pos y)
 
 t1_decrypt (FT_Byte *buffer, FT_Offset length, FT_UShort seed)
 

Macro Definition Documentation

#define FT_COMPONENT   trace_psobjs

Definition at line 37 of file psobjs.c.

#define IS_OCTAL_DIGIT (   c)    ( '0' <= (c) && (c) <= '7' )

Definition at line 332 of file psobjs.c.

Referenced by skip_literal_string().

#define T1_MAX_TABLE_ELEMENTS   32

Definition at line 1235 of file psobjs.c.

Referenced by ps_parser_load_field_table().

Function Documentation

ps_parser_done ( PS_Parser  parser)

Definition at line 1432 of file psobjs.c.

References FT_UNUSED.

ps_parser_init ( PS_Parser  parser,
FT_Byte base,
FT_Byte limit,
FT_Memory  memory 
)

Definition at line 1417 of file psobjs.c.

References ps_parser_funcs.

ps_parser_skip_PS_token ( PS_Parser  parser)

Definition at line 514 of file psobjs.c.

Referenced by ps_parser_to_token().

ps_parser_skip_spaces ( PS_Parser  parser)
ps_parser_to_bytes ( PS_Parser  parser,
FT_Byte bytes,
FT_Offset  max_bytes,
FT_Long pnum_bytes,
FT_Bool  delimiters 
)

Definition at line 1314 of file psobjs.c.

References error, FT_ERROR, PS_Conv_ASCIIHexDecode(), and ps_parser_skip_spaces().

ps_parser_to_coord_array ( PS_Parser  parser,
FT_Int  max_coords,
FT_Short coords 
)

Definition at line 1376 of file psobjs.c.

References ps_parser_skip_spaces(), and ps_tocoordarray().

ps_parser_to_fixed ( PS_Parser  parser,
FT_Int  power_ten 
)

Definition at line 1367 of file psobjs.c.

References PS_Conv_ToFixed(), and ps_parser_skip_spaces().

ps_parser_to_fixed_array ( PS_Parser  parser,
FT_Int  max_values,
FT_Fixed values,
FT_Int  power_ten 
)

Definition at line 1387 of file psobjs.c.

References ps_parser_skip_spaces(), and ps_tofixedarray().

ps_parser_to_int ( PS_Parser  parser)

Definition at line 1304 of file psobjs.c.

References PS_Conv_ToInt(), and ps_parser_skip_spaces().

ps_parser_to_token_array ( PS_Parser  parser,
T1_Token  tokens,
FT_UInt  max_tokens,
FT_Int pnum_tokens 
)
ps_table_add ( PS_Table  table,
FT_Int  idx,
void object,
FT_PtrDist  length 
)

Definition at line 168 of file psobjs.c.

References error, FT_ERROR, FT_MEM_COPY, FT_PAD_CEIL, idx, if(), and reallocate_t1_table().

ps_table_done ( PS_Table  table)

Definition at line 240 of file psobjs.c.

References error, FT_ALLOC, FT_FREE, FT_MEM_COPY, FT_UNUSED, and shift_elements().

ps_table_new ( PS_Table  table,
FT_Int  count,
FT_Memory  memory 
)

Definition at line 69 of file psobjs.c.

References error, FT_FREE, FT_NEW_ARRAY, if(), and ps_table_funcs.

ps_table_release ( PS_Table  table)

Definition at line 264 of file psobjs.c.

References FT_FREE.

static int ps_tobool ( FT_Byte **  acur,
FT_Byte limit 
)
static

Definition at line 988 of file psobjs.c.

References FT_Bool.

Referenced by ps_parser_load_field().

static FT_Int ps_tocoordarray ( FT_Byte **  acur,
FT_Byte limit,
FT_Int  max_coords,
FT_Short coords 
)
static

Definition at line 775 of file psobjs.c.

References NULL, PS_Conv_ToFixed(), and skip_spaces().

Referenced by ps_parser_to_coord_array().

static FT_Int ps_tofixedarray ( FT_Byte **  acur,
FT_Byte limit,
FT_Int  max_values,
FT_Fixed values,
FT_Int  power_ten 
)
static

Definition at line 852 of file psobjs.c.

References NULL, PS_Conv_ToFixed(), and skip_spaces().

Referenced by ps_parser_load_field(), and ps_parser_to_fixed_array().

static FT_Error reallocate_t1_table ( PS_Table  table,
FT_Long  new_size 
)
static

Definition at line 116 of file psobjs.c.

References error, FT_ALLOC, FT_FREE, FT_MEM_COPY, and shift_elements().

Referenced by ps_table_add().

static void shift_elements ( PS_Table  table,
FT_Byte old_base 
)
static

Definition at line 99 of file psobjs.c.

Referenced by ps_table_done(), and reallocate_t1_table().

static void skip_comment ( FT_Byte **  acur,
FT_Byte limit 
)
static

Definition at line 291 of file psobjs.c.

References IS_PS_NEWLINE.

Referenced by skip_spaces().

static FT_Error skip_literal_string ( FT_Byte **  acur,
FT_Byte limit 
)
static

Definition at line 339 of file psobjs.c.

References error, i, and IS_OCTAL_DIGIT.

Referenced by ps_parser_to_token().

static FT_Error skip_procedure ( FT_Byte **  acur,
FT_Byte limit 
)
static

Definition at line 454 of file psobjs.c.

Referenced by ps_parser_to_token().

static void skip_spaces ( FT_Byte **  acur,
FT_Byte limit 
)
static
static FT_Error skip_string ( FT_Byte **  acur,
FT_Byte limit 
)
static

Definition at line 415 of file psobjs.c.

References IS_PS_XDIGIT, and skip_spaces().

t1_builder_add_contour ( T1_Builder  builder)
t1_builder_add_point1 ( T1_Builder  builder,
FT_Pos  x,
FT_Pos  y 
)
t1_builder_check_points ( T1_Builder  builder,
FT_Int  count 
)

Definition at line 1535 of file psobjs.c.

References FT_GLYPHLOADER_CHECK_POINTS.

Referenced by t1_builder_add_point1(), and t1_decoder_parse_charstrings().

t1_builder_done ( T1_Builder  builder)

Definition at line 1523 of file psobjs.c.

References FT_GlyphSlotRec_::outline.

Referenced by t1_decoder_done().

t1_builder_init ( T1_Builder  builder,
FT_Face  face,
FT_Size  size,
FT_GlyphSlot  glyph,
FT_Bool  hinting 
)

Definition at line 1467 of file psobjs.c.

References FT_GlyphLoader_Rewind(), t1_builder_funcs, and T1_Parse_Start.

Referenced by t1_decoder_init().

t1_builder_start_point ( T1_Builder  builder,
FT_Pos  x,
FT_Pos  y 
)
t1_decrypt ( FT_Byte buffer,
FT_Offset  length,
FT_UShort  seed 
)

Definition at line 1698 of file psobjs.c.

References PS_Conv_EexecDecode().