1 /***************************************************************************/ |
|
2 /* */ |
|
3 /* t1cmap.h */ |
|
4 /* */ |
|
5 /* Type 1 character map support (specification). */ |
|
6 /* */ |
|
7 /* Copyright 2002, 2003, 2006 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 __T1CMAP_H__ |
|
20 #define __T1CMAP_H__ |
|
21 |
|
22 #include <ft2build.h> |
|
23 #include FT_INTERNAL_OBJECTS_H |
|
24 #include FT_INTERNAL_TYPE1_TYPES_H |
|
25 |
|
26 FT_BEGIN_HEADER |
|
27 |
|
28 |
|
29 /*************************************************************************/ |
|
30 /*************************************************************************/ |
|
31 /***** *****/ |
|
32 /***** TYPE1 STANDARD (AND EXPERT) ENCODING CMAPS *****/ |
|
33 /***** *****/ |
|
34 /*************************************************************************/ |
|
35 /*************************************************************************/ |
|
36 |
|
37 /* standard (and expert) encoding cmaps */ |
|
38 typedef struct T1_CMapStdRec_* T1_CMapStd; |
|
39 |
|
40 typedef struct T1_CMapStdRec_ |
|
41 { |
|
42 FT_CMapRec cmap; |
|
43 |
|
44 const FT_UShort* code_to_sid; |
|
45 PS_Adobe_Std_StringsFunc sid_to_string; |
|
46 |
|
47 FT_UInt num_glyphs; |
|
48 const char* const* glyph_names; |
|
49 |
|
50 } T1_CMapStdRec; |
|
51 |
|
52 |
|
53 FT_CALLBACK_TABLE const FT_CMap_ClassRec |
|
54 t1_cmap_standard_class_rec; |
|
55 |
|
56 FT_CALLBACK_TABLE const FT_CMap_ClassRec |
|
57 t1_cmap_expert_class_rec; |
|
58 |
|
59 |
|
60 /*************************************************************************/ |
|
61 /*************************************************************************/ |
|
62 /***** *****/ |
|
63 /***** TYPE1 CUSTOM ENCODING CMAP *****/ |
|
64 /***** *****/ |
|
65 /*************************************************************************/ |
|
66 /*************************************************************************/ |
|
67 |
|
68 typedef struct T1_CMapCustomRec_* T1_CMapCustom; |
|
69 |
|
70 typedef struct T1_CMapCustomRec_ |
|
71 { |
|
72 FT_CMapRec cmap; |
|
73 FT_UInt first; |
|
74 FT_UInt count; |
|
75 FT_UShort* indices; |
|
76 |
|
77 } T1_CMapCustomRec; |
|
78 |
|
79 |
|
80 FT_CALLBACK_TABLE const FT_CMap_ClassRec |
|
81 t1_cmap_custom_class_rec; |
|
82 |
|
83 |
|
84 /*************************************************************************/ |
|
85 /*************************************************************************/ |
|
86 /***** *****/ |
|
87 /***** TYPE1 SYNTHETIC UNICODE ENCODING CMAP *****/ |
|
88 /***** *****/ |
|
89 /*************************************************************************/ |
|
90 /*************************************************************************/ |
|
91 |
|
92 /* unicode (synthetic) cmaps */ |
|
93 |
|
94 FT_CALLBACK_TABLE const FT_CMap_ClassRec |
|
95 t1_cmap_unicode_class_rec; |
|
96 |
|
97 /* */ |
|
98 |
|
99 |
|
100 FT_END_HEADER |
|
101 |
|
102 #endif /* __T1CMAP_H__ */ |
|
103 |
|
104 |
|
105 /* END */ |
|