misc/libfreetype/src/psaux/psobjs.h
changeset 5172 88f2e05288ba
equal deleted inserted replaced
5171:f9283dc4860d 5172:88f2e05288ba
       
     1 /***************************************************************************/
       
     2 /*                                                                         */
       
     3 /*  psobjs.h                                                               */
       
     4 /*                                                                         */
       
     5 /*    Auxiliary functions for PostScript fonts (specification).            */
       
     6 /*                                                                         */
       
     7 /*  Copyright 1996-2001, 2002, 2003 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 #ifndef __PSOBJS_H__
       
    20 #define __PSOBJS_H__
       
    21 
       
    22 
       
    23 #include <ft2build.h>
       
    24 #include FT_INTERNAL_POSTSCRIPT_AUX_H
       
    25 
       
    26 
       
    27 FT_BEGIN_HEADER
       
    28 
       
    29 
       
    30   /*************************************************************************/
       
    31   /*************************************************************************/
       
    32   /*****                                                               *****/
       
    33   /*****                             T1_TABLE                          *****/
       
    34   /*****                                                               *****/
       
    35   /*************************************************************************/
       
    36   /*************************************************************************/
       
    37 
       
    38 
       
    39   FT_CALLBACK_TABLE
       
    40   const PS_Table_FuncsRec    ps_table_funcs;
       
    41 
       
    42   FT_CALLBACK_TABLE
       
    43   const PS_Parser_FuncsRec   ps_parser_funcs;
       
    44 
       
    45   FT_CALLBACK_TABLE
       
    46   const T1_Builder_FuncsRec  t1_builder_funcs;
       
    47 
       
    48 
       
    49   FT_LOCAL( FT_Error )
       
    50   ps_table_new( PS_Table   table,
       
    51                 FT_Int     count,
       
    52                 FT_Memory  memory );
       
    53 
       
    54   FT_LOCAL( FT_Error )
       
    55   ps_table_add( PS_Table    table,
       
    56                 FT_Int      idx,
       
    57                 void*       object,
       
    58                 FT_PtrDist  length );
       
    59 
       
    60   FT_LOCAL( void )
       
    61   ps_table_done( PS_Table  table );
       
    62 
       
    63 
       
    64   FT_LOCAL( void )
       
    65   ps_table_release( PS_Table  table );
       
    66 
       
    67 
       
    68   /*************************************************************************/
       
    69   /*************************************************************************/
       
    70   /*****                                                               *****/
       
    71   /*****                            T1 PARSER                          *****/
       
    72   /*****                                                               *****/
       
    73   /*************************************************************************/
       
    74   /*************************************************************************/
       
    75 
       
    76 
       
    77   FT_LOCAL( void )
       
    78   ps_parser_skip_spaces( PS_Parser  parser );
       
    79 
       
    80   FT_LOCAL( void )
       
    81   ps_parser_skip_PS_token( PS_Parser  parser );
       
    82 
       
    83   FT_LOCAL( void )
       
    84   ps_parser_to_token( PS_Parser  parser,
       
    85                       T1_Token   token );
       
    86 
       
    87   FT_LOCAL( void )
       
    88   ps_parser_to_token_array( PS_Parser  parser,
       
    89                             T1_Token   tokens,
       
    90                             FT_UInt    max_tokens,
       
    91                             FT_Int*    pnum_tokens );
       
    92 
       
    93   FT_LOCAL( FT_Error )
       
    94   ps_parser_load_field( PS_Parser       parser,
       
    95                         const T1_Field  field,
       
    96                         void**          objects,
       
    97                         FT_UInt         max_objects,
       
    98                         FT_ULong*       pflags );
       
    99 
       
   100   FT_LOCAL( FT_Error )
       
   101   ps_parser_load_field_table( PS_Parser       parser,
       
   102                               const T1_Field  field,
       
   103                               void**          objects,
       
   104                               FT_UInt         max_objects,
       
   105                               FT_ULong*       pflags );
       
   106 
       
   107   FT_LOCAL( FT_Long )
       
   108   ps_parser_to_int( PS_Parser  parser );
       
   109 
       
   110 
       
   111   FT_LOCAL( FT_Error )
       
   112   ps_parser_to_bytes( PS_Parser  parser,
       
   113                       FT_Byte*   bytes,
       
   114                       FT_Offset  max_bytes,
       
   115                       FT_Long*   pnum_bytes,
       
   116                       FT_Bool    delimiters );
       
   117 
       
   118 
       
   119   FT_LOCAL( FT_Fixed )
       
   120   ps_parser_to_fixed( PS_Parser  parser,
       
   121                       FT_Int     power_ten );
       
   122 
       
   123 
       
   124   FT_LOCAL( FT_Int )
       
   125   ps_parser_to_coord_array( PS_Parser  parser,
       
   126                             FT_Int     max_coords,
       
   127                             FT_Short*  coords );
       
   128 
       
   129   FT_LOCAL( FT_Int )
       
   130   ps_parser_to_fixed_array( PS_Parser  parser,
       
   131                             FT_Int     max_values,
       
   132                             FT_Fixed*  values,
       
   133                             FT_Int     power_ten );
       
   134 
       
   135 
       
   136   FT_LOCAL( void )
       
   137   ps_parser_init( PS_Parser  parser,
       
   138                   FT_Byte*   base,
       
   139                   FT_Byte*   limit,
       
   140                   FT_Memory  memory );
       
   141 
       
   142   FT_LOCAL( void )
       
   143   ps_parser_done( PS_Parser  parser );
       
   144 
       
   145 
       
   146   /*************************************************************************/
       
   147   /*************************************************************************/
       
   148   /*****                                                               *****/
       
   149   /*****                            T1 BUILDER                         *****/
       
   150   /*****                                                               *****/
       
   151   /*************************************************************************/
       
   152   /*************************************************************************/
       
   153 
       
   154   FT_LOCAL( void )
       
   155   t1_builder_init( T1_Builder    builder,
       
   156                    FT_Face       face,
       
   157                    FT_Size       size,
       
   158                    FT_GlyphSlot  glyph,
       
   159                    FT_Bool       hinting );
       
   160 
       
   161   FT_LOCAL( void )
       
   162   t1_builder_done( T1_Builder  builder );
       
   163 
       
   164   FT_LOCAL( FT_Error )
       
   165   t1_builder_check_points( T1_Builder  builder,
       
   166                            FT_Int      count );
       
   167 
       
   168   FT_LOCAL( void )
       
   169   t1_builder_add_point( T1_Builder  builder,
       
   170                         FT_Pos      x,
       
   171                         FT_Pos      y,
       
   172                         FT_Byte     flag );
       
   173 
       
   174   FT_LOCAL( FT_Error )
       
   175   t1_builder_add_point1( T1_Builder  builder,
       
   176                          FT_Pos      x,
       
   177                          FT_Pos      y );
       
   178 
       
   179   FT_LOCAL( FT_Error )
       
   180   t1_builder_add_contour( T1_Builder  builder );
       
   181 
       
   182 
       
   183   FT_LOCAL( FT_Error )
       
   184   t1_builder_start_point( T1_Builder  builder,
       
   185                           FT_Pos      x,
       
   186                           FT_Pos      y );
       
   187 
       
   188 
       
   189   FT_LOCAL( void )
       
   190   t1_builder_close_contour( T1_Builder  builder );
       
   191 
       
   192 
       
   193   /*************************************************************************/
       
   194   /*************************************************************************/
       
   195   /*****                                                               *****/
       
   196   /*****                            OTHER                              *****/
       
   197   /*****                                                               *****/
       
   198   /*************************************************************************/
       
   199   /*************************************************************************/
       
   200 
       
   201   FT_LOCAL( void )
       
   202   t1_decrypt( FT_Byte*   buffer,
       
   203               FT_Offset  length,
       
   204               FT_UShort  seed );
       
   205 
       
   206 
       
   207 FT_END_HEADER
       
   208 
       
   209 #endif /* __PSOBJS_H__ */
       
   210 
       
   211 
       
   212 /* END */