source: trunk/poppler/freetype2/include/freetype/ftmac.h @ 209

Last change on this file since 209 was 209, checked in by Eugene Romanenko, 14 years ago

PDF plugin: freetype library updated to version 2.3.5

File size: 16.6 KB
Line 
1/***************************************************************************/
2/*                                                                         */
3/*  ftmac.h                                                                */
4/*                                                                         */
5/*    Additional Mac-specific API.                                         */
6/*                                                                         */
7/*  Copyright 1996-2001, 2004, 2006, 2007 by                               */
8/*  Just van Rossum, 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/***************************************************************************/
20/*                                                                         */
21/* NOTE: Include this file after <freetype/freetype.h> and after the       */
22/*       Mac-specific <Types.h> header (or any other Mac header that       */
23/*       includes <Types.h>); we use Handle type.                          */
24/*                                                                         */
25/***************************************************************************/
26
27
28#ifndef __FTMAC_H__
29#define __FTMAC_H__
30
31
32#include <ft2build.h>
33
34
35FT_BEGIN_HEADER
36
37
38/* gcc-3.4.1 and later can warn about functions tagged as deprecated */
39#ifndef FT_DEPRECATED_ATTRIBUTE
40#if defined(__GNUC__)                                               && \
41    ((__GNUC__ >= 4) || ((__GNUC__ == 3) && (__GNUC_MINOR__ >= 1)))
42#define FT_DEPRECATED_ATTRIBUTE  __attribute__((deprecated))
43#else
44#define FT_DEPRECATED_ATTRIBUTE
45#endif
46#endif
47
48
49  /*************************************************************************/
50  /*                                                                       */
51  /* <Section>                                                             */
52  /*    mac_specific                                                       */
53  /*                                                                       */
54  /* <Title>                                                               */
55  /*    Mac Specific Interface                                             */
56  /*                                                                       */
57  /* <Abstract>                                                            */
58  /*    Only available on the Macintosh.                                   */
59  /*                                                                       */
60  /* <Description>                                                         */
61  /*    The following definitions are only available if FreeType is        */
62  /*    compiled on a Macintosh.                                           */
63  /*                                                                       */
64  /*************************************************************************/
65
66
67  /*************************************************************************/
68  /*                                                                       */
69  /* <Function>                                                            */
70  /*    FT_New_Face_From_FOND                                              */
71  /*                                                                       */
72  /* <Description>                                                         */
73  /*    Create a new face object from a FOND resource.                     */
74  /*                                                                       */
75  /* <InOut>                                                               */
76  /*    library    :: A handle to the library resource.                    */
77  /*                                                                       */
78  /* <Input>                                                               */
79  /*    fond       :: A FOND resource.                                     */
80  /*                                                                       */
81  /*    face_index :: Only supported for the -1 `sanity check' special     */
82  /*                  case.                                                */
83  /*                                                                       */
84  /* <Output>                                                              */
85  /*    aface      :: A handle to a new face object.                       */
86  /*                                                                       */
87  /* <Return>                                                              */
88  /*    FreeType error code.  0 means success.                             */
89  /*                                                                       */
90  /* <Notes>                                                               */
91  /*    This function can be used to create @FT_Face objects from fonts    */
92  /*    that are installed in the system as follows.                       */
93  /*                                                                       */
94  /*    {                                                                  */
95  /*      fond = GetResource( 'FOND', fontName );                          */
96  /*      error = FT_New_Face_From_FOND( library, fond, 0, &face );        */
97  /*    }                                                                  */
98  /*                                                                       */
99  FT_EXPORT( FT_Error )
100  FT_New_Face_From_FOND( FT_Library  library,
101                         Handle      fond,
102                         FT_Long     face_index,
103                         FT_Face    *aface );
104
105
106  /*************************************************************************/
107  /*                                                                       */
108  /* <Function>                                                            */
109  /*    FT_GetFile_From_Mac_Name                                           */
110  /*                                                                       */
111  /* <Description>                                                         */
112  /*    Return an FSSpec for the disk file containing the named font.      */
113  /*                                                                       */
114  /* <Input>                                                               */
115  /*    fontName   :: Mac OS name of the font (e.g., Times New Roman       */
116  /*                  Bold).                                               */
117  /*                                                                       */
118  /* <Output>                                                              */
119  /*    pathSpec   :: FSSpec to the file.  For passing to                  */
120  /*                  @FT_New_Face_From_FSSpec.                            */
121  /*                                                                       */
122  /*    face_index :: Index of the face.  For passing to                   */
123  /*                  @FT_New_Face_From_FSSpec.                            */
124  /*                                                                       */
125  /* <Return>                                                              */
126  /*    FreeType error code.  0 means success.                             */
127  /*                                                                       */
128  FT_EXPORT( FT_Error )
129  FT_GetFile_From_Mac_Name( const char*  fontName,
130                            FSSpec*      pathSpec,
131                            FT_Long*     face_index )
132                          FT_DEPRECATED_ATTRIBUTE;
133
134
135  /*************************************************************************/
136  /*                                                                       */
137  /* <Function>                                                            */
138  /*    FT_GetFile_From_Mac_ATS_Name                                       */
139  /*                                                                       */
140  /* <Description>                                                         */
141  /*    Return an FSSpec for the disk file containing the named font.      */
142  /*                                                                       */
143  /* <Input>                                                               */
144  /*    fontName   :: Mac OS name of the font in ATS framework.            */
145  /*                                                                       */
146  /* <Output>                                                              */
147  /*    pathSpec   :: FSSpec to the file. For passing to                   */
148  /*                  @FT_New_Face_From_FSSpec.                            */
149  /*                                                                       */
150  /*    face_index :: Index of the face. For passing to                    */
151  /*                  @FT_New_Face_From_FSSpec.                            */
152  /*                                                                       */
153  /* <Return>                                                              */
154  /*    FreeType error code.  0 means success.                             */
155  /*                                                                       */
156  FT_EXPORT( FT_Error )
157  FT_GetFile_From_Mac_ATS_Name( const char*  fontName,
158                                FSSpec*      pathSpec,
159                                FT_Long*     face_index )
160                              FT_DEPRECATED_ATTRIBUTE;
161
162
163  /*************************************************************************/
164  /*                                                                       */
165  /* <Function>                                                            */
166  /*    FT_GetFilePath_From_Mac_ATS_Name                                   */
167  /*                                                                       */
168  /* <Description>                                                         */
169  /*    Return a pathname of the disk file and face index for given font   */
170  /*    name which is handled by ATS framework.                            */
171  /*                                                                       */
172  /* <Input>                                                               */
173  /*    fontName    :: Mac OS name of the font in ATS framework.           */
174  /*                                                                       */
175  /* <Output>                                                              */
176  /*    path        :: Buffer to store pathname of the file.  For passing  */
177  /*                   to @FT_New_Face.  The client must allocate this     */
178  /*                   buffer before calling this function.                */
179  /*                                                                       */
180  /*    maxPathSize :: Lengths of the buffer `path' that client allocated. */
181  /*                                                                       */
182  /*    face_index  :: Index of the face.  For passing to @FT_New_Face.    */
183  /*                                                                       */
184  /* <Return>                                                              */
185  /*    FreeType error code.  0 means success.                             */
186  /*                                                                       */
187  FT_EXPORT( FT_Error )
188  FT_GetFilePath_From_Mac_ATS_Name( const char*  fontName,
189                                    UInt8*       path,
190                                    UInt32       maxPathSize,
191                                    FT_Long*     face_index );
192
193
194  /*************************************************************************/
195  /*                                                                       */
196  /* <Function>                                                            */
197  /*    FT_New_Face_From_FSSpec                                            */
198  /*                                                                       */
199  /* <Description>                                                         */
200  /*    Create a new face object from a given resource and typeface index  */
201  /*    using an FSSpec to the font file.                                  */
202  /*                                                                       */
203  /* <InOut>                                                               */
204  /*    library    :: A handle to the library resource.                    */
205  /*                                                                       */
206  /* <Input>                                                               */
207  /*    spec       :: FSSpec to the font file.                             */
208  /*                                                                       */
209  /*    face_index :: The index of the face within the resource.  The      */
210  /*                  first face has index 0.                              */
211  /* <Output>                                                              */
212  /*    aface      :: A handle to a new face object.                       */
213  /*                                                                       */
214  /* <Return>                                                              */
215  /*    FreeType error code.  0 means success.                             */
216  /*                                                                       */
217  /* <Note>                                                                */
218  /*    @FT_New_Face_From_FSSpec is identical to @FT_New_Face except       */
219  /*    it accepts an FSSpec instead of a path.                            */
220  /*                                                                       */
221  FT_EXPORT( FT_Error )
222  FT_New_Face_From_FSSpec( FT_Library     library,
223                           const FSSpec  *spec,
224                           FT_Long        face_index,
225                           FT_Face       *aface )
226                         FT_DEPRECATED_ATTRIBUTE;
227
228
229  /*************************************************************************/
230  /*                                                                       */
231  /* <Function>                                                            */
232  /*    FT_New_Face_From_FSRef                                             */
233  /*                                                                       */
234  /* <Description>                                                         */
235  /*    Create a new face object from a given resource and typeface index  */
236  /*    using an FSRef to the font file.                                   */
237  /*                                                                       */
238  /* <InOut>                                                               */
239  /*    library    :: A handle to the library resource.                    */
240  /*                                                                       */
241  /* <Input>                                                               */
242  /*    spec       :: FSRef to the font file.                              */
243  /*                                                                       */
244  /*    face_index :: The index of the face within the resource.  The      */
245  /*                  first face has index 0.                              */
246  /* <Output>                                                              */
247  /*    aface      :: A handle to a new face object.                       */
248  /*                                                                       */
249  /* <Return>                                                              */
250  /*    FreeType error code.  0 means success.                             */
251  /*                                                                       */
252  /* <Note>                                                                */
253  /*    @FT_New_Face_From_FSRef is identical to @FT_New_Face except        */
254  /*    it accepts an FSRef instead of a path.                             */
255  /*                                                                       */
256  FT_EXPORT( FT_Error )
257  FT_New_Face_From_FSRef( FT_Library    library,
258                          const FSRef  *ref,
259                          FT_Long       face_index,
260                          FT_Face      *aface )
261                        FT_DEPRECATED_ATTRIBUTE;
262
263  /* */
264
265
266FT_END_HEADER
267
268
269#endif /* __FTMAC_H__ */
270
271
272/* END */
Note: See TracBrowser for help on using the repository browser.