1 /****************************************************************************
2  *
3  * t1decode.h
4  *
5  *   PostScript Type 1 decoding routines (specification).
6  *
7  * Copyright (C) 2000-2019 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 T1DECODE_H_
20 #define T1DECODE_H_
21 
22 
23 #include <ft2build.h>
24 #include FT_INTERNAL_POSTSCRIPT_AUX_H
25 #include FT_INTERNAL_TYPE1_TYPES_H
26 
27 
28 FT_BEGIN_HEADER
29 
30 
31   FT_CALLBACK_TABLE
32   const T1_Decoder_FuncsRec  t1_decoder_funcs;
33 
34   FT_LOCAL( FT_Int )
35   t1_lookup_glyph_by_stdcharcode_ps( PS_Decoder*  decoder,
36                                      FT_Int       charcode );
37 
38 #ifdef T1_CONFIG_OPTION_OLD_ENGINE
39   FT_LOCAL( FT_Error )
40   t1_decoder_parse_glyph( T1_Decoder  decoder,
41                           FT_UInt     glyph_index );
42 
43   FT_LOCAL( FT_Error )
44   t1_decoder_parse_charstrings( T1_Decoder  decoder,
45                                 FT_Byte*    base,
46                                 FT_UInt     len );
47 #else
48   FT_LOCAL( FT_Error )
49   t1_decoder_parse_metrics( T1_Decoder  decoder,
50                             FT_Byte*    charstring_base,
51                             FT_UInt     charstring_len );
52 #endif
53 
54   FT_LOCAL( FT_Error )
55   t1_decoder_init( T1_Decoder           decoder,
56                    FT_Face              face,
57                    FT_Size              size,
58                    FT_GlyphSlot         slot,
59                    FT_Byte**            glyph_names,
60                    PS_Blend             blend,
61                    FT_Bool              hinting,
62                    FT_Render_Mode       hint_mode,
63                    T1_Decoder_Callback  parse_glyph );
64 
65   FT_LOCAL( void )
66   t1_decoder_done( T1_Decoder  decoder );
67 
68 
69 FT_END_HEADER
70 
71 #endif /* T1DECODE_H_ */
72 
73 
74 /* END */
75