1/***************************************************************************/
2/* */
3/* t1decode.h */
4/* */
5/* PostScript Type 1 decoding routines (specification). */
6/* */
7/* Copyright 2000-2018 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
28FT_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
69FT_END_HEADER
70
71#endif /* T1DECODE_H_ */
72
73
74/* END */
75