Go to most recent revision | Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
4680 | right-hear | 1 | /***************************************************************************/ |
2 | /* */ |
||
3 | /* svcid.h */ |
||
4 | /* */ |
||
5 | /* The FreeType CID font services (specification). */ |
||
6 | /* */ |
||
7 | /* Copyright 2007, 2009 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 | #ifndef FT_CONFIG_OPTION_PIC |
||
50 | |||
51 | #define FT_DEFINE_SERVICE_CIDREC(class_, get_ros_, \ |
||
52 | get_is_cid_, get_cid_from_glyph_index_ ) \ |
||
53 | static const FT_Service_CIDRec class_ = \ |
||
54 | { \ |
||
55 | get_ros_, get_is_cid_, get_cid_from_glyph_index_ \ |
||
56 | }; |
||
57 | |||
58 | #else /* FT_CONFIG_OPTION_PIC */ |
||
59 | |||
60 | #define FT_DEFINE_SERVICE_CIDREC(class_, get_ros_, \ |
||
61 | get_is_cid_, get_cid_from_glyph_index_ ) \ |
||
62 | void \ |
||
63 | FT_Init_Class_##class_( FT_Library library, \ |
||
64 | FT_Service_CIDRec* clazz) \ |
||
65 | { \ |
||
66 | FT_UNUSED(library); \ |
||
67 | clazz->get_ros = get_ros_; \ |
||
68 | clazz->get_is_cid = get_is_cid_; \ |
||
69 | clazz->get_cid_from_glyph_index = get_cid_from_glyph_index_; \ |
||
70 | } |
||
71 | |||
72 | #endif /* FT_CONFIG_OPTION_PIC */ |
||
73 | |||
74 | /* */ |
||
75 | |||
76 | |||
77 | FT_END_HEADER |
||
78 | |||
79 | |||
80 | #endif /* __SVCID_H__ */ |
||
81 | |||
82 | |||
83 | /* END */ |