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