1 /***************************************************************************/
2 /*                                                                         */
3 /*  cffload.h                                                              */
4 /*                                                                         */
5 /*    OpenType & CFF data/program tables loader (specification).           */
6 /*                                                                         */
7 /*  Copyright 1996-2015 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 __CFFLOAD_H__
20 #define __CFFLOAD_H__
21 
22 
23 #include <ft2build.h>
24 #include "cfftypes.h"
25 
26 
27 FT_BEGIN_HEADER
28 
29   FT_LOCAL( FT_UShort )
30   cff_get_standard_encoding( FT_UInt  charcode );
31 
32 
33   FT_LOCAL( FT_String* )
34   cff_index_get_string( CFF_Font  font,
35                         FT_UInt   element );
36 
37   FT_LOCAL( FT_String* )
38   cff_index_get_sid_string( CFF_Font  font,
39                             FT_UInt   sid );
40 
41 
42   FT_LOCAL( FT_Error )
43   cff_index_access_element( CFF_Index  idx,
44                             FT_UInt    element,
45                             FT_Byte**  pbytes,
46                             FT_ULong*  pbyte_len );
47 
48   FT_LOCAL( void )
49   cff_index_forget_element( CFF_Index  idx,
50                             FT_Byte**  pbytes );
51 
52   FT_LOCAL( FT_String* )
53   cff_index_get_name( CFF_Font  font,
54                       FT_UInt   element );
55 
56 
57   FT_LOCAL( FT_UInt )
58   cff_charset_cid_to_gindex( CFF_Charset  charset,
59                              FT_UInt      cid );
60 
61 
62   FT_LOCAL( FT_Error )
63   cff_font_load( FT_Library library,
64                  FT_Stream  stream,
65                  FT_Int     face_index,
66                  CFF_Font   font,
67                  FT_Bool    pure_cff );
68 
69   FT_LOCAL( void )
70   cff_font_done( CFF_Font  font );
71 
72 
73   FT_LOCAL( FT_Byte )
74   cff_fd_select_get( CFF_FDSelect  fdselect,
75                      FT_UInt       glyph_index );
76 
77 
78 FT_END_HEADER
79 
80 #endif /* __CFFLOAD_H__ */
81 
82 
83 /* END */
84