Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
4349 | Serge | 1 | /***************************************************************************/ |
2 | /* */ |
||
3 | /* svpostnm.h */ |
||
4 | /* */ |
||
5 | /* The FreeType PostScript name services (specification). */ |
||
6 | /* */ |
||
7 | /* Copyright 2003, 2007, 2009, 2012 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 __SVPOSTNM_H__ |
||
20 | #define __SVPOSTNM_H__ |
||
21 | |||
22 | #include FT_INTERNAL_SERVICE_H |
||
23 | |||
24 | |||
25 | FT_BEGIN_HEADER |
||
26 | |||
27 | /* |
||
28 | * A trivial service used to retrieve the PostScript name of a given |
||
29 | * font when available. The `get_name' field should never be NULL. |
||
30 | * |
||
31 | * The corresponding function can return NULL to indicate that the |
||
32 | * PostScript name is not available. |
||
33 | * |
||
34 | * The name is owned by the face and will be destroyed with it. |
||
35 | */ |
||
36 | |||
37 | #define FT_SERVICE_ID_POSTSCRIPT_FONT_NAME "postscript-font-name" |
||
38 | |||
39 | |||
40 | typedef const char* |
||
41 | (*FT_PsName_GetFunc)( FT_Face face ); |
||
42 | |||
43 | |||
44 | FT_DEFINE_SERVICE( PsFontName ) |
||
45 | { |
||
46 | FT_PsName_GetFunc get_ps_font_name; |
||
47 | }; |
||
48 | |||
49 | |||
50 | #ifndef FT_CONFIG_OPTION_PIC |
||
51 | |||
52 | #define FT_DEFINE_SERVICE_PSFONTNAMEREC( class_, get_ps_font_name_ ) \ |
||
53 | static const FT_Service_PsFontNameRec class_ = \ |
||
54 | { \ |
||
55 | get_ps_font_name_ \ |
||
56 | }; |
||
57 | |||
58 | #else /* FT_CONFIG_OPTION_PIC */ |
||
59 | |||
60 | #define FT_DEFINE_SERVICE_PSFONTNAMEREC( class_, get_ps_font_name_ ) \ |
||
61 | void \ |
||
62 | FT_Init_Class_ ## class_( FT_Library library, \ |
||
63 | FT_Service_PsFontNameRec* clazz ) \ |
||
64 | { \ |
||
65 | FT_UNUSED( library ); \ |
||
66 | \ |
||
67 | clazz->get_ps_font_name = get_ps_font_name_; \ |
||
68 | } |
||
69 | |||
70 | #endif /* FT_CONFIG_OPTION_PIC */ |
||
71 | |||
72 | /* */ |
||
73 | |||
74 | |||
75 | FT_END_HEADER |
||
76 | |||
77 | |||
78 | #endif /* __SVPOSTNM_H__ */ |
||
79 | |||
80 | |||
81 | /* END */ |