1049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/***************************************************************************/ 2049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/* */ 3049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/* psobjs.h */ 4049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/* */ 5049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/* Auxiliary functions for PostScript fonts (specification). */ 6049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/* */ 7049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/* Copyright 1996-2001, 2002, 2003 by */ 8049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/* David Turner, Robert Wilhelm, and Werner Lemberg. */ 9049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/* */ 10049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/* This file is part of the FreeType project, and may only be used, */ 11049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/* modified, and distributed under the terms of the FreeType project */ 12049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/* license, LICENSE.TXT. By continuing to use, modify, or distribute */ 13049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/* this file you indicate that you have read the license and */ 14049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/* understand and accept it fully. */ 15049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/* */ 16049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/***************************************************************************/ 17049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 18049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 19049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#ifndef __PSOBJS_H__ 20049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#define __PSOBJS_H__ 21049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 22049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 23049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#include <ft2build.h> 24049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#include FT_INTERNAL_POSTSCRIPT_AUX_H 25049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 26049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 27049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source ProjectFT_BEGIN_HEADER 28049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 29049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 30049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /*************************************************************************/ 31049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /*************************************************************************/ 32049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /***** *****/ 33049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /***** T1_TABLE *****/ 34049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /***** *****/ 35049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /*************************************************************************/ 36049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /*************************************************************************/ 37049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 38049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 39049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_CALLBACK_TABLE 40049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project const PS_Table_FuncsRec ps_table_funcs; 41049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 42049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_CALLBACK_TABLE 43049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project const PS_Parser_FuncsRec ps_parser_funcs; 44049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 45049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_CALLBACK_TABLE 46049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project const T1_Builder_FuncsRec t1_builder_funcs; 47049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 48049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 49049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( FT_Error ) 50049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project ps_table_new( PS_Table table, 51049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Int count, 52049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Memory memory ); 53049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 54049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( FT_Error ) 55049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project ps_table_add( PS_Table table, 56049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Int idx, 57049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project void* object, 58049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_PtrDist length ); 59049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 60049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( void ) 61049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project ps_table_done( PS_Table table ); 62049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 63049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 64049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( void ) 65049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project ps_table_release( PS_Table table ); 66049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 67049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 68049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /*************************************************************************/ 69049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /*************************************************************************/ 70049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /***** *****/ 71049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /***** T1 PARSER *****/ 72049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /***** *****/ 73049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /*************************************************************************/ 74049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /*************************************************************************/ 75049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 76049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 77049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( void ) 78049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project ps_parser_skip_spaces( PS_Parser parser ); 79049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 80049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( void ) 81049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project ps_parser_skip_PS_token( PS_Parser parser ); 82049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 83049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( void ) 84049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project ps_parser_to_token( PS_Parser parser, 85049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project T1_Token token ); 86049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 87049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( void ) 88049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project ps_parser_to_token_array( PS_Parser parser, 89049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project T1_Token tokens, 90049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_UInt max_tokens, 91049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Int* pnum_tokens ); 92049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 93049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( FT_Error ) 94049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project ps_parser_load_field( PS_Parser parser, 95049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project const T1_Field field, 96049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project void** objects, 97049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_UInt max_objects, 98049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_ULong* pflags ); 99049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 100049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( FT_Error ) 101049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project ps_parser_load_field_table( PS_Parser parser, 102049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project const T1_Field field, 103049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project void** objects, 104049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_UInt max_objects, 105049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_ULong* pflags ); 106049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 107049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( FT_Long ) 108049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project ps_parser_to_int( PS_Parser parser ); 109049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 110049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 111049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( FT_Error ) 112049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project ps_parser_to_bytes( PS_Parser parser, 113049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Byte* bytes, 114295ffce55e0198e7a9f7d46b33f5c2b4147bf821David 'Digit' Turner FT_Offset max_bytes, 115049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Long* pnum_bytes, 116049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Bool delimiters ); 117049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 118049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 119049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( FT_Fixed ) 120049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project ps_parser_to_fixed( PS_Parser parser, 121049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Int power_ten ); 122049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 123049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 124049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( FT_Int ) 125049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project ps_parser_to_coord_array( PS_Parser parser, 126049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Int max_coords, 127049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Short* coords ); 128049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 129049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( FT_Int ) 130049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project ps_parser_to_fixed_array( PS_Parser parser, 131049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Int max_values, 132049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Fixed* values, 133049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Int power_ten ); 134049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 135049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 136049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( void ) 137049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project ps_parser_init( PS_Parser parser, 138049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Byte* base, 139049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Byte* limit, 140049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Memory memory ); 141049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 142049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( void ) 143049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project ps_parser_done( PS_Parser parser ); 144049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 145049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 146049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /*************************************************************************/ 147049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /*************************************************************************/ 148049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /***** *****/ 149049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /***** T1 BUILDER *****/ 150049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /***** *****/ 151049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /*************************************************************************/ 152049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /*************************************************************************/ 153049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 154049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( void ) 155049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project t1_builder_init( T1_Builder builder, 156049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Face face, 157049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Size size, 158049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_GlyphSlot glyph, 159049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Bool hinting ); 160049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 161049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( void ) 162049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project t1_builder_done( T1_Builder builder ); 163049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 164049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( FT_Error ) 165049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project t1_builder_check_points( T1_Builder builder, 166049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Int count ); 167049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 168049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( void ) 169049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project t1_builder_add_point( T1_Builder builder, 170049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Pos x, 171049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Pos y, 172049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Byte flag ); 173049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 174049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( FT_Error ) 175049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project t1_builder_add_point1( T1_Builder builder, 176049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Pos x, 177049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Pos y ); 178049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 179049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( FT_Error ) 180049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project t1_builder_add_contour( T1_Builder builder ); 181049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 182049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 183049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( FT_Error ) 184049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project t1_builder_start_point( T1_Builder builder, 185049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Pos x, 186049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Pos y ); 187049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 188049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 189049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( void ) 190049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project t1_builder_close_contour( T1_Builder builder ); 191049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 192049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 193049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /*************************************************************************/ 194049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /*************************************************************************/ 195049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /***** *****/ 196049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /***** OTHER *****/ 197049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /***** *****/ 198049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /*************************************************************************/ 199049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /*************************************************************************/ 200049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 201049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_LOCAL( void ) 202049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project t1_decrypt( FT_Byte* buffer, 203049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_Offset length, 204049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project FT_UShort seed ); 205049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 206049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 207049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source ProjectFT_END_HEADER 208049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 209049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#endif /* __PSOBJS_H__ */ 210049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 211049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project 212049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/* END */ 213