OLD | NEW |
1 /***************************************************************************/ | 1 /***************************************************************************/ |
2 /* */ | 2 /* */ |
3 /* afhints.h */ | 3 /* afhints.h */ |
4 /* */ | 4 /* */ |
5 /* Auto-fitter hinting routines (specification). */ | 5 /* Auto-fitter hinting routines (specification). */ |
6 /* */ | 6 /* */ |
7 /* Copyright 2003-2008, 2010-2011 by */ | 7 /* Copyright 2003-2008, 2010-2012 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 |
(...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
247 typedef struct AF_EdgeRec_* AF_Edge; | 247 typedef struct AF_EdgeRec_* AF_Edge; |
248 | 248 |
249 | 249 |
250 typedef struct AF_PointRec_ | 250 typedef struct AF_PointRec_ |
251 { | 251 { |
252 FT_UShort flags; /* point flags used by hinter */ | 252 FT_UShort flags; /* point flags used by hinter */ |
253 FT_Char in_dir; /* direction of inwards vector */ | 253 FT_Char in_dir; /* direction of inwards vector */ |
254 FT_Char out_dir; /* direction of outwards vector */ | 254 FT_Char out_dir; /* direction of outwards vector */ |
255 | 255 |
256 FT_Pos ox, oy; /* original, scaled position */ | 256 FT_Pos ox, oy; /* original, scaled position */ |
257 FT_Short fx, fy; /* original, unscaled position (font units) */ | 257 FT_Short fx, fy; /* original, unscaled position (in font units) */ |
258 FT_Pos x, y; /* current position */ | 258 FT_Pos x, y; /* current position */ |
259 FT_Pos u, v; /* current (x,y) or (y,x) depending on context */ | 259 FT_Pos u, v; /* current (x,y) or (y,x) depending on context */ |
260 | 260 |
261 AF_Point next; /* next point in contour */ | 261 AF_Point next; /* next point in contour */ |
262 AF_Point prev; /* previous point in contour */ | 262 AF_Point prev; /* previous point in contour */ |
263 | 263 |
264 } AF_PointRec; | 264 } AF_PointRec; |
265 | 265 |
266 | 266 |
267 typedef struct AF_SegmentRec_ | 267 typedef struct AF_SegmentRec_ |
(...skipping 15 matching lines...) Expand all Loading... |
283 FT_Pos len; /* used during stem matching */ | 283 FT_Pos len; /* used during stem matching */ |
284 | 284 |
285 AF_Point first; /* first point in edge segment */ | 285 AF_Point first; /* first point in edge segment */ |
286 AF_Point last; /* last point in edge segment */ | 286 AF_Point last; /* last point in edge segment */ |
287 | 287 |
288 } AF_SegmentRec; | 288 } AF_SegmentRec; |
289 | 289 |
290 | 290 |
291 typedef struct AF_EdgeRec_ | 291 typedef struct AF_EdgeRec_ |
292 { | 292 { |
293 FT_Short fpos; /* original, unscaled position (font units) */ | 293 FT_Short fpos; /* original, unscaled position (in font units) */ |
294 FT_Pos opos; /* original, scaled position */ | 294 FT_Pos opos; /* original, scaled position */ |
295 FT_Pos pos; /* current position */ | 295 FT_Pos pos; /* current position */ |
296 | 296 |
297 FT_Byte flags; /* edge flags */ | 297 FT_Byte flags; /* edge flags */ |
298 FT_Char dir; /* edge direction */ | 298 FT_Char dir; /* edge direction */ |
299 FT_Fixed scale; /* used to speed up interpolation between edges */ | 299 FT_Fixed scale; /* used to speed up interpolation between edges */ |
300 AF_Width blue_edge; /* non-NULL if this is a blue edge */ | |
301 | 300 |
302 AF_Edge link; /* link edge */ | 301 AF_Width blue_edge; /* non-NULL if this is a blue edge */ |
303 AF_Edge serif; /* primary edge for serifs */ | 302 AF_Edge link; /* link edge */ |
304 FT_Short num_linked; /* number of linked edges */ | 303 AF_Edge serif; /* primary edge for serifs */ |
305 FT_Int score; /* used during stem matching */ | 304 FT_Short num_linked; /* number of linked edges */ |
| 305 FT_Int score; /* used during stem matching */ |
306 | 306 |
307 AF_Segment first; /* first segment in edge */ | 307 AF_Segment first; /* first segment in edge */ |
308 AF_Segment last; /* last segment in edge */ | 308 AF_Segment last; /* last segment in edge */ |
309 | 309 |
310 } AF_EdgeRec; | 310 } AF_EdgeRec; |
311 | 311 |
312 | 312 |
313 typedef struct AF_AxisHintsRec_ | 313 typedef struct AF_AxisHintsRec_ |
314 { | 314 { |
315 FT_Int num_segments; /* number of used segments */ | 315 FT_Int num_segments; /* number of used segments */ |
(...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
458 ? (seg1)->pos - (seg2)->pos \ | 458 ? (seg1)->pos - (seg2)->pos \ |
459 : (seg2)->pos - (seg1)->pos ) | 459 : (seg2)->pos - (seg1)->pos ) |
460 | 460 |
461 | 461 |
462 FT_END_HEADER | 462 FT_END_HEADER |
463 | 463 |
464 #endif /* __AFHINTS_H__ */ | 464 #endif /* __AFHINTS_H__ */ |
465 | 465 |
466 | 466 |
467 /* END */ | 467 /* END */ |
OLD | NEW |