Go to most recent revision | Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
5496 | leency | 1 | /***************************************************************************/ |
2 | /* */ |
||
3 | /* svpostnm.h */ |
||
4 | /* */ |
||
5 | /* The FreeType PostScript name services (specification). */ |
||
6 | /* */ |
||
7 | /* Copyright 2003, 2007 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 | #ifndef FT_CONFIG_OPTION_PIC |
||
50 | |||
51 | #define FT_DEFINE_SERVICE_PSFONTNAMEREC(class_, get_ps_font_name_) \ |
||
52 | static const FT_Service_PsFontNameRec class_ = \ |
||
53 | { \ |
||
54 | get_ps_font_name_ \ |
||
55 | }; |
||
56 | |||
57 | #else /* FT_CONFIG_OPTION_PIC */ |
||
58 | |||
59 | #define FT_DEFINE_SERVICE_PSFONTNAMEREC(class_, get_ps_font_name_) \ |
||
60 | void \ |
||
61 | FT_Init_Class_##class_( FT_Library library, \ |
||
62 | FT_Service_PsFontNameRec* clazz) \ |
||
63 | { \ |
||
64 | FT_UNUSED(library); \ |
||
65 | clazz->get_ps_font_name = get_ps_font_name_; \ |
||
66 | } |
||
67 | |||
68 | #endif /* FT_CONFIG_OPTION_PIC */ |
||
69 | |||
70 | /* */ |
||
71 | |||
72 | |||
73 | FT_END_HEADER |
||
74 | |||
75 | |||
76 | #endif /* __SVPOSTNM_H__ */ |
||
77 | |||
78 | |||
79 | /* END */ |