OLD | NEW |
1 /***************************************************************************/ | 1 /***************************************************************************/ |
2 /* */ | 2 /* */ |
3 /* ftmm.h */ | 3 /* ftmm.h */ |
4 /* */ | 4 /* */ |
5 /* FreeType Multiple Master font interface (specification). */ | 5 /* FreeType Multiple Master font interface (specification). */ |
6 /* */ | 6 /* */ |
7 /* Copyright 1996-2001, 2003, 2004, 2006, 2009 by */ | 7 /* Copyright 1996-2001, 2003, 2004, 2006, 2009, 2013 by */ |
8 /* David Turner, Robert Wilhelm, and Werner Lemberg. */ | 8 /* David Turner, Robert Wilhelm, and Werner Lemberg. */ |
9 /* */ | 9 /* */ |
10 /* This file is part of the FreeType project, and may only be used, */ | 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 */ | 11 /* modified, and distributed under the terms of the FreeType project */ |
12 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ | 12 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ |
13 /* this file you indicate that you have read the license and */ | 13 /* this file you indicate that you have read the license and */ |
14 /* understand and accept it fully. */ | 14 /* understand and accept it fully. */ |
15 /* */ | 15 /* */ |
16 /***************************************************************************/ | 16 /***************************************************************************/ |
17 | 17 |
18 | 18 |
19 #ifndef __FTMM_H__ | 19 #ifndef __FTMM_H__ |
20 #define __FTMM_H__ | 20 #define __FTMM_H__ |
21 | 21 |
22 | 22 |
23 #include "../ft2build.h" | 23 #include <ft2build.h> |
24 #include "t1tables.h" | 24 #include FT_TYPE1_TABLES_H |
25 | 25 |
26 | 26 |
27 FT_BEGIN_HEADER | 27 FT_BEGIN_HEADER |
28 | 28 |
29 | 29 |
30 /*************************************************************************/ | 30 /*************************************************************************/ |
31 /* */ | 31 /* */ |
32 /* <Section> */ | 32 /* <Section> */ |
33 /* multiple_masters */ | 33 /* multiple_masters */ |
34 /* */ | 34 /* */ |
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
189 /* <Fields> */ | 189 /* <Fields> */ |
190 /* num_axis :: The number of axes. The maximum value is~4 for */ | 190 /* num_axis :: The number of axes. The maximum value is~4 for */ |
191 /* MM; no limit in GX. */ | 191 /* MM; no limit in GX. */ |
192 /* */ | 192 /* */ |
193 /* num_designs :: The number of designs; should be normally */ | 193 /* num_designs :: The number of designs; should be normally */ |
194 /* 2^num_axis for MM fonts. Not meaningful for GX */ | 194 /* 2^num_axis for MM fonts. Not meaningful for GX */ |
195 /* (where every glyph could have a different */ | 195 /* (where every glyph could have a different */ |
196 /* number of designs). */ | 196 /* number of designs). */ |
197 /* */ | 197 /* */ |
198 /* num_namedstyles :: The number of named styles; only meaningful for */ | 198 /* num_namedstyles :: The number of named styles; only meaningful for */ |
199 /* GX which allows certain design coordinates to */ | 199 /* GX that allows certain design coordinates to */ |
200 /* have a string ID (in the `name' table) */ | 200 /* have a string ID (in the `name' table) */ |
201 /* associated with them. The font can tell the */ | 201 /* associated with them. The font can tell the */ |
202 /* user that, for example, Weight=1.5 is `Bold'. */ | 202 /* user that, for example, Weight=1.5 is `Bold'. */ |
203 /* */ | 203 /* */ |
204 /* axis :: A table of axis descriptors. */ | 204 /* axis :: A table of axis descriptors. */ |
205 /* GX fonts contain slightly more data than MM. */ | 205 /* GX fonts contain slightly more data than MM. */ |
206 /* */ | 206 /* */ |
207 /* namedstyles :: A table of named styles. */ | 207 /* namedstyles :: A table of named styles. */ |
208 /* Only meaningful with GX. */ | 208 /* Only meaningful with GX. */ |
209 /* */ | 209 /* */ |
210 typedef struct FT_MM_Var_ | 210 typedef struct FT_MM_Var_ |
211 { | 211 { |
212 FT_UInt num_axis; | 212 FT_UInt num_axis; |
213 FT_UInt num_designs; | 213 FT_UInt num_designs; |
214 FT_UInt num_namedstyles; | 214 FT_UInt num_namedstyles; |
215 FT_Var_Axis* axis; | 215 FT_Var_Axis* axis; |
216 FT_Var_Named_Style* namedstyle; | 216 FT_Var_Named_Style* namedstyle; |
217 | 217 |
218 } FT_MM_Var; | 218 } FT_MM_Var; |
219 | 219 |
220 | 220 |
221 /* */ | |
222 | |
223 | |
224 /*************************************************************************/ | 221 /*************************************************************************/ |
225 /* */ | 222 /* */ |
226 /* <Function> */ | 223 /* <Function> */ |
227 /* FT_Get_Multi_Master */ | 224 /* FT_Get_Multi_Master */ |
228 /* */ | 225 /* */ |
229 /* <Description> */ | 226 /* <Description> */ |
230 /* Retrieve the Multiple Master descriptor of a given font. */ | 227 /* Retrieve the Multiple Master descriptor of a given font. */ |
231 /* */ | 228 /* */ |
232 /* This function can't be used with GX fonts. */ | 229 /* This function can't be used with GX fonts. */ |
233 /* */ | 230 /* */ |
(...skipping 17 matching lines...) Expand all Loading... |
251 /* FT_Get_MM_Var */ | 248 /* FT_Get_MM_Var */ |
252 /* */ | 249 /* */ |
253 /* <Description> */ | 250 /* <Description> */ |
254 /* Retrieve the Multiple Master/GX var descriptor of a given font. */ | 251 /* Retrieve the Multiple Master/GX var descriptor of a given font. */ |
255 /* */ | 252 /* */ |
256 /* <Input> */ | 253 /* <Input> */ |
257 /* face :: A handle to the source face. */ | 254 /* face :: A handle to the source face. */ |
258 /* */ | 255 /* */ |
259 /* <Output> */ | 256 /* <Output> */ |
260 /* amaster :: The Multiple Masters/GX var descriptor. */ | 257 /* amaster :: The Multiple Masters/GX var descriptor. */ |
261 /* Allocates a data structure, which the user must free */ | 258 /* Allocates a data structure, which the user must free. */ |
262 /* (a single call to FT_FREE will do it). */ | |
263 /* */ | 259 /* */ |
264 /* <Return> */ | 260 /* <Return> */ |
265 /* FreeType error code. 0~means success. */ | 261 /* FreeType error code. 0~means success. */ |
266 /* */ | 262 /* */ |
267 FT_EXPORT( FT_Error ) | 263 FT_EXPORT( FT_Error ) |
268 FT_Get_MM_Var( FT_Face face, | 264 FT_Get_MM_Var( FT_Face face, |
269 FT_MM_Var* *amaster ); | 265 FT_MM_Var* *amaster ); |
270 | 266 |
271 | 267 |
272 /*************************************************************************/ | 268 /*************************************************************************/ |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
359 /* FT_Set_Var_Blend_Coordinates */ | 355 /* FT_Set_Var_Blend_Coordinates */ |
360 /* */ | 356 /* */ |
361 /* <Description> */ | 357 /* <Description> */ |
362 /* This is another name of @FT_Set_MM_Blend_Coordinates. */ | 358 /* This is another name of @FT_Set_MM_Blend_Coordinates. */ |
363 /* */ | 359 /* */ |
364 FT_EXPORT( FT_Error ) | 360 FT_EXPORT( FT_Error ) |
365 FT_Set_Var_Blend_Coordinates( FT_Face face, | 361 FT_Set_Var_Blend_Coordinates( FT_Face face, |
366 FT_UInt num_coords, | 362 FT_UInt num_coords, |
367 FT_Fixed* coords ); | 363 FT_Fixed* coords ); |
368 | 364 |
369 | |
370 /* */ | 365 /* */ |
371 | 366 |
372 | 367 |
373 FT_END_HEADER | 368 FT_END_HEADER |
374 | 369 |
375 #endif /* __FTMM_H__ */ | 370 #endif /* __FTMM_H__ */ |
376 | 371 |
377 | 372 |
378 /* END */ | 373 /* END */ |
OLD | NEW |