OLD | NEW |
| (Empty) |
1 /***************************************************************************/ | |
2 /* */ | |
3 /* svcid.h */ | |
4 /* */ | |
5 /* The FreeType CID font services (specification). */ | |
6 /* */ | |
7 /* Copyright 2007, 2009, 2012 by Derek Clegg, Michael Toftdal. */ | |
8 /* */ | |
9 /* This file is part of the FreeType project, and may only be used, */ | |
10 /* modified, and distributed under the terms of the FreeType project */ | |
11 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ | |
12 /* this file you indicate that you have read the license and */ | |
13 /* understand and accept it fully. */ | |
14 /* */ | |
15 /***************************************************************************/ | |
16 | |
17 | |
18 #ifndef __SVCID_H__ | |
19 #define __SVCID_H__ | |
20 | |
21 #include FT_INTERNAL_SERVICE_H | |
22 | |
23 | |
24 FT_BEGIN_HEADER | |
25 | |
26 | |
27 #define FT_SERVICE_ID_CID "CID" | |
28 | |
29 typedef FT_Error | |
30 (*FT_CID_GetRegistryOrderingSupplementFunc)( FT_Face face, | |
31 const char* *registry, | |
32 const char* *ordering, | |
33 FT_Int *supplement ); | |
34 typedef FT_Error | |
35 (*FT_CID_GetIsInternallyCIDKeyedFunc)( FT_Face face, | |
36 FT_Bool *is_cid ); | |
37 typedef FT_Error | |
38 (*FT_CID_GetCIDFromGlyphIndexFunc)( FT_Face face, | |
39 FT_UInt glyph_index, | |
40 FT_UInt *cid ); | |
41 | |
42 FT_DEFINE_SERVICE( CID ) | |
43 { | |
44 FT_CID_GetRegistryOrderingSupplementFunc get_ros; | |
45 FT_CID_GetIsInternallyCIDKeyedFunc get_is_cid; | |
46 FT_CID_GetCIDFromGlyphIndexFunc get_cid_from_glyph_index; | |
47 }; | |
48 | |
49 | |
50 #ifndef FT_CONFIG_OPTION_PIC | |
51 | |
52 #define FT_DEFINE_SERVICE_CIDREC( class_, \ | |
53 get_ros_, \ | |
54 get_is_cid_, \ | |
55 get_cid_from_glyph_index_ ) \ | |
56 static const FT_Service_CIDRec class_ = \ | |
57 { \ | |
58 get_ros_, get_is_cid_, get_cid_from_glyph_index_ \ | |
59 }; | |
60 | |
61 #else /* FT_CONFIG_OPTION_PIC */ | |
62 | |
63 #define FT_DEFINE_SERVICE_CIDREC( class_, \ | |
64 get_ros_, \ | |
65 get_is_cid_, \ | |
66 get_cid_from_glyph_index_ ) \ | |
67 void \ | |
68 FT_Init_Class_ ## class_( FT_Library library, \ | |
69 FT_Service_CIDRec* clazz ) \ | |
70 { \ | |
71 FT_UNUSED( library ); \ | |
72 \ | |
73 clazz->get_ros = get_ros_; \ | |
74 clazz->get_is_cid = get_is_cid_; \ | |
75 clazz->get_cid_from_glyph_index = get_cid_from_glyph_index_; \ | |
76 } | |
77 | |
78 #endif /* FT_CONFIG_OPTION_PIC */ | |
79 | |
80 /* */ | |
81 | |
82 | |
83 FT_END_HEADER | |
84 | |
85 | |
86 #endif /* __SVCID_H__ */ | |
87 | |
88 | |
89 /* END */ | |
OLD | NEW |