xref: /inferno-os/libfreetype/psobjs.h (revision 37da2899f40661e3e9631e497da8dc59b971cbd0)
1*37da2899SCharles.Forsyth /***************************************************************************/
2*37da2899SCharles.Forsyth /*                                                                         */
3*37da2899SCharles.Forsyth /*  psobjs.h                                                               */
4*37da2899SCharles.Forsyth /*                                                                         */
5*37da2899SCharles.Forsyth /*    Auxiliary functions for PostScript fonts (specification).            */
6*37da2899SCharles.Forsyth /*                                                                         */
7*37da2899SCharles.Forsyth /*  Copyright 1996-2001, 2002 by                                           */
8*37da2899SCharles.Forsyth /*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
9*37da2899SCharles.Forsyth /*                                                                         */
10*37da2899SCharles.Forsyth /*  This file is part of the FreeType project, and may only be used,       */
11*37da2899SCharles.Forsyth /*  modified, and distributed under the terms of the FreeType project      */
12*37da2899SCharles.Forsyth /*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
13*37da2899SCharles.Forsyth /*  this file you indicate that you have read the license and              */
14*37da2899SCharles.Forsyth /*  understand and accept it fully.                                        */
15*37da2899SCharles.Forsyth /*                                                                         */
16*37da2899SCharles.Forsyth /***************************************************************************/
17*37da2899SCharles.Forsyth 
18*37da2899SCharles.Forsyth 
19*37da2899SCharles.Forsyth #ifndef __PSOBJS_H__
20*37da2899SCharles.Forsyth #define __PSOBJS_H__
21*37da2899SCharles.Forsyth 
22*37da2899SCharles.Forsyth 
23*37da2899SCharles.Forsyth #include <ft2build.h>
24*37da2899SCharles.Forsyth #include FT_INTERNAL_POSTSCRIPT_AUX_H
25*37da2899SCharles.Forsyth 
26*37da2899SCharles.Forsyth 
27*37da2899SCharles.Forsyth FT_BEGIN_HEADER
28*37da2899SCharles.Forsyth 
29*37da2899SCharles.Forsyth 
30*37da2899SCharles.Forsyth   /*************************************************************************/
31*37da2899SCharles.Forsyth   /*************************************************************************/
32*37da2899SCharles.Forsyth   /*****                                                               *****/
33*37da2899SCharles.Forsyth   /*****                             T1_TABLE                          *****/
34*37da2899SCharles.Forsyth   /*****                                                               *****/
35*37da2899SCharles.Forsyth   /*************************************************************************/
36*37da2899SCharles.Forsyth   /*************************************************************************/
37*37da2899SCharles.Forsyth 
38*37da2899SCharles.Forsyth 
39*37da2899SCharles.Forsyth   FT_CALLBACK_TABLE
40*37da2899SCharles.Forsyth   const PS_Table_FuncsRec    ps_table_funcs;
41*37da2899SCharles.Forsyth 
42*37da2899SCharles.Forsyth   FT_CALLBACK_TABLE
43*37da2899SCharles.Forsyth   const PS_Parser_FuncsRec   ps_parser_funcs;
44*37da2899SCharles.Forsyth 
45*37da2899SCharles.Forsyth   FT_CALLBACK_TABLE
46*37da2899SCharles.Forsyth   const T1_Builder_FuncsRec  t1_builder_funcs;
47*37da2899SCharles.Forsyth 
48*37da2899SCharles.Forsyth 
49*37da2899SCharles.Forsyth   FT_LOCAL( FT_Error )
50*37da2899SCharles.Forsyth   ps_table_new( PS_Table   table,
51*37da2899SCharles.Forsyth                 FT_Int     count,
52*37da2899SCharles.Forsyth                 FT_Memory  memory );
53*37da2899SCharles.Forsyth 
54*37da2899SCharles.Forsyth   FT_LOCAL( FT_Error )
55*37da2899SCharles.Forsyth   ps_table_add( PS_Table  table,
56*37da2899SCharles.Forsyth                 FT_Int    idx,
57*37da2899SCharles.Forsyth                 void*     object,
58*37da2899SCharles.Forsyth                 FT_Int    length );
59*37da2899SCharles.Forsyth 
60*37da2899SCharles.Forsyth   FT_LOCAL( void )
61*37da2899SCharles.Forsyth   ps_table_done( PS_Table  table );
62*37da2899SCharles.Forsyth 
63*37da2899SCharles.Forsyth 
64*37da2899SCharles.Forsyth   FT_LOCAL( void )
65*37da2899SCharles.Forsyth   ps_table_release( PS_Table  table );
66*37da2899SCharles.Forsyth 
67*37da2899SCharles.Forsyth 
68*37da2899SCharles.Forsyth   /*************************************************************************/
69*37da2899SCharles.Forsyth   /*************************************************************************/
70*37da2899SCharles.Forsyth   /*****                                                               *****/
71*37da2899SCharles.Forsyth   /*****                            T1 PARSER                          *****/
72*37da2899SCharles.Forsyth   /*****                                                               *****/
73*37da2899SCharles.Forsyth   /*************************************************************************/
74*37da2899SCharles.Forsyth   /*************************************************************************/
75*37da2899SCharles.Forsyth 
76*37da2899SCharles.Forsyth 
77*37da2899SCharles.Forsyth   FT_LOCAL( void )
78*37da2899SCharles.Forsyth   ps_parser_skip_spaces( PS_Parser  parser );
79*37da2899SCharles.Forsyth 
80*37da2899SCharles.Forsyth   FT_LOCAL( void )
81*37da2899SCharles.Forsyth   ps_parser_skip_alpha( PS_Parser  parser );
82*37da2899SCharles.Forsyth 
83*37da2899SCharles.Forsyth   FT_LOCAL( void )
84*37da2899SCharles.Forsyth   ps_parser_to_token( PS_Parser  parser,
85*37da2899SCharles.Forsyth                       T1_Token   token );
86*37da2899SCharles.Forsyth 
87*37da2899SCharles.Forsyth   FT_LOCAL( void )
88*37da2899SCharles.Forsyth   ps_parser_to_token_array( PS_Parser  parser,
89*37da2899SCharles.Forsyth                             T1_Token   tokens,
90*37da2899SCharles.Forsyth                             FT_UInt    max_tokens,
91*37da2899SCharles.Forsyth                             FT_Int*    pnum_tokens );
92*37da2899SCharles.Forsyth 
93*37da2899SCharles.Forsyth   FT_LOCAL( FT_Error )
94*37da2899SCharles.Forsyth   ps_parser_load_field( PS_Parser       parser,
95*37da2899SCharles.Forsyth                         const T1_Field  field,
96*37da2899SCharles.Forsyth                         void**          objects,
97*37da2899SCharles.Forsyth                         FT_UInt         max_objects,
98*37da2899SCharles.Forsyth                         FT_ULong*       pflags );
99*37da2899SCharles.Forsyth 
100*37da2899SCharles.Forsyth   FT_LOCAL( FT_Error )
101*37da2899SCharles.Forsyth   ps_parser_load_field_table( PS_Parser       parser,
102*37da2899SCharles.Forsyth                               const T1_Field  field,
103*37da2899SCharles.Forsyth                               void**          objects,
104*37da2899SCharles.Forsyth                               FT_UInt         max_objects,
105*37da2899SCharles.Forsyth                               FT_ULong*       pflags );
106*37da2899SCharles.Forsyth 
107*37da2899SCharles.Forsyth   FT_LOCAL( FT_Long )
108*37da2899SCharles.Forsyth   ps_parser_to_int( PS_Parser  parser );
109*37da2899SCharles.Forsyth 
110*37da2899SCharles.Forsyth 
111*37da2899SCharles.Forsyth   FT_LOCAL( FT_Fixed )
112*37da2899SCharles.Forsyth   ps_parser_to_fixed( PS_Parser  parser,
113*37da2899SCharles.Forsyth                       FT_Int     power_ten );
114*37da2899SCharles.Forsyth 
115*37da2899SCharles.Forsyth 
116*37da2899SCharles.Forsyth   FT_LOCAL( FT_Int )
117*37da2899SCharles.Forsyth   ps_parser_to_coord_array( PS_Parser  parser,
118*37da2899SCharles.Forsyth                             FT_Int     max_coords,
119*37da2899SCharles.Forsyth                             FT_Short*  coords );
120*37da2899SCharles.Forsyth 
121*37da2899SCharles.Forsyth   FT_LOCAL( FT_Int )
122*37da2899SCharles.Forsyth   ps_parser_to_fixed_array( PS_Parser  parser,
123*37da2899SCharles.Forsyth                             FT_Int     max_values,
124*37da2899SCharles.Forsyth                             FT_Fixed*  values,
125*37da2899SCharles.Forsyth                             FT_Int     power_ten );
126*37da2899SCharles.Forsyth 
127*37da2899SCharles.Forsyth 
128*37da2899SCharles.Forsyth   FT_LOCAL( void )
129*37da2899SCharles.Forsyth   ps_parser_init( PS_Parser  parser,
130*37da2899SCharles.Forsyth                   FT_Byte*   base,
131*37da2899SCharles.Forsyth                   FT_Byte*   limit,
132*37da2899SCharles.Forsyth                   FT_Memory  memory );
133*37da2899SCharles.Forsyth 
134*37da2899SCharles.Forsyth   FT_LOCAL( void )
135*37da2899SCharles.Forsyth   ps_parser_done( PS_Parser  parser );
136*37da2899SCharles.Forsyth 
137*37da2899SCharles.Forsyth 
138*37da2899SCharles.Forsyth   /*************************************************************************/
139*37da2899SCharles.Forsyth   /*************************************************************************/
140*37da2899SCharles.Forsyth   /*****                                                               *****/
141*37da2899SCharles.Forsyth   /*****                            T1 BUILDER                         *****/
142*37da2899SCharles.Forsyth   /*****                                                               *****/
143*37da2899SCharles.Forsyth   /*************************************************************************/
144*37da2899SCharles.Forsyth   /*************************************************************************/
145*37da2899SCharles.Forsyth 
146*37da2899SCharles.Forsyth   FT_LOCAL( void )
147*37da2899SCharles.Forsyth   t1_builder_init( T1_Builder    builder,
148*37da2899SCharles.Forsyth                    FT_Face       face,
149*37da2899SCharles.Forsyth                    FT_Size       size,
150*37da2899SCharles.Forsyth                    FT_GlyphSlot  glyph,
151*37da2899SCharles.Forsyth                    FT_Bool       hinting );
152*37da2899SCharles.Forsyth 
153*37da2899SCharles.Forsyth   FT_LOCAL( void )
154*37da2899SCharles.Forsyth   t1_builder_done( T1_Builder  builder );
155*37da2899SCharles.Forsyth 
156*37da2899SCharles.Forsyth   FT_LOCAL( FT_Error )
157*37da2899SCharles.Forsyth   t1_builder_check_points( T1_Builder  builder,
158*37da2899SCharles.Forsyth                            FT_Int      count );
159*37da2899SCharles.Forsyth 
160*37da2899SCharles.Forsyth   FT_LOCAL( void )
161*37da2899SCharles.Forsyth   t1_builder_add_point( T1_Builder  builder,
162*37da2899SCharles.Forsyth                         FT_Pos      x,
163*37da2899SCharles.Forsyth                         FT_Pos      y,
164*37da2899SCharles.Forsyth                         FT_Byte     flag );
165*37da2899SCharles.Forsyth 
166*37da2899SCharles.Forsyth   FT_LOCAL( FT_Error )
167*37da2899SCharles.Forsyth   t1_builder_add_point1( T1_Builder  builder,
168*37da2899SCharles.Forsyth                          FT_Pos      x,
169*37da2899SCharles.Forsyth                          FT_Pos      y );
170*37da2899SCharles.Forsyth 
171*37da2899SCharles.Forsyth   FT_LOCAL( FT_Error )
172*37da2899SCharles.Forsyth   t1_builder_add_contour( T1_Builder  builder );
173*37da2899SCharles.Forsyth 
174*37da2899SCharles.Forsyth 
175*37da2899SCharles.Forsyth   FT_LOCAL( FT_Error )
176*37da2899SCharles.Forsyth   t1_builder_start_point( T1_Builder  builder,
177*37da2899SCharles.Forsyth                           FT_Pos      x,
178*37da2899SCharles.Forsyth                           FT_Pos      y );
179*37da2899SCharles.Forsyth 
180*37da2899SCharles.Forsyth 
181*37da2899SCharles.Forsyth   FT_LOCAL( void )
182*37da2899SCharles.Forsyth   t1_builder_close_contour( T1_Builder  builder );
183*37da2899SCharles.Forsyth 
184*37da2899SCharles.Forsyth 
185*37da2899SCharles.Forsyth   /*************************************************************************/
186*37da2899SCharles.Forsyth   /*************************************************************************/
187*37da2899SCharles.Forsyth   /*****                                                               *****/
188*37da2899SCharles.Forsyth   /*****                            OTHER                              *****/
189*37da2899SCharles.Forsyth   /*****                                                               *****/
190*37da2899SCharles.Forsyth   /*************************************************************************/
191*37da2899SCharles.Forsyth   /*************************************************************************/
192*37da2899SCharles.Forsyth 
193*37da2899SCharles.Forsyth   FT_LOCAL( void )
194*37da2899SCharles.Forsyth   t1_decrypt( FT_Byte*   buffer,
195*37da2899SCharles.Forsyth               FT_Offset  length,
196*37da2899SCharles.Forsyth               FT_UShort  seed );
197*37da2899SCharles.Forsyth 
198*37da2899SCharles.Forsyth 
199*37da2899SCharles.Forsyth FT_END_HEADER
200*37da2899SCharles.Forsyth 
201*37da2899SCharles.Forsyth #endif /* __PSOBJS_H__ */
202*37da2899SCharles.Forsyth 
203*37da2899SCharles.Forsyth 
204*37da2899SCharles.Forsyth /* END */
205