| OLD | NEW | 
|---|
| 1 /***************************************************************************/ | 1 /***************************************************************************/ | 
| 2 /*                                                                         */ | 2 /*                                                                         */ | 
| 3 /*  afglobal.h                                                             */ | 3 /*  afglobal.h                                                             */ | 
| 4 /*                                                                         */ | 4 /*                                                                         */ | 
| 5 /*    Auto-fitter routines to compute global hinting values                */ | 5 /*    Auto-fitter routines to compute global hinting values                */ | 
| 6 /*    (specification).                                                     */ | 6 /*    (specification).                                                     */ | 
| 7 /*                                                                         */ | 7 /*                                                                         */ | 
| 8 /*  Copyright 2003-2005, 2007, 2009, 2011 by                               */ | 8 /*  Copyright 2003-2005, 2007, 2009, 2011-2012 by                          */ | 
| 9 /*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */ | 9 /*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */ | 
| 10 /*                                                                         */ | 10 /*                                                                         */ | 
| 11 /*  This file is part of the FreeType project, and may only be used,       */ | 11 /*  This file is part of the FreeType project, and may only be used,       */ | 
| 12 /*  modified, and distributed under the terms of the FreeType project      */ | 12 /*  modified, and distributed under the terms of the FreeType project      */ | 
| 13 /*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */ | 13 /*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */ | 
| 14 /*  this file you indicate that you have read the license and              */ | 14 /*  this file you indicate that you have read the license and              */ | 
| 15 /*  understand and accept it fully.                                        */ | 15 /*  understand and accept it fully.                                        */ | 
| 16 /*                                                                         */ | 16 /*                                                                         */ | 
| 17 /***************************************************************************/ | 17 /***************************************************************************/ | 
| 18 | 18 | 
| 19 | 19 | 
| 20 #ifndef __AFGLOBAL_H__ | 20 #ifndef __AFGLOBAL_H__ | 
| 21 #define __AFGLOBAL_H__ | 21 #define __AFGLOBAL_H__ | 
| 22 | 22 | 
| 23 | 23 | 
| 24 #include "aftypes.h" | 24 #include "aftypes.h" | 
|  | 25 #include "afmodule.h" | 
| 25 | 26 | 
| 26 | 27 | 
| 27 FT_BEGIN_HEADER | 28 FT_BEGIN_HEADER | 
| 28 | 29 | 
| 29 | 30 | 
|  | 31   /* | 
|  | 32    *  Default values and flags for both autofitter globals (found in | 
|  | 33    *  AF_ModuleRec) and face globals (in AF_FaceGlobalsRec). | 
|  | 34    */ | 
|  | 35 | 
|  | 36   /* index of fallback script in `af_script_classes' */ | 
|  | 37 #define AF_SCRIPT_FALLBACK  2 | 
|  | 38   /* a bit mask indicating an uncovered glyph        */ | 
|  | 39 #define AF_SCRIPT_NONE      0x7F | 
|  | 40   /* if this flag is set, we have an ASCII digit     */ | 
|  | 41 #define AF_DIGIT            0x80 | 
|  | 42 | 
|  | 43   /* `increase-x-height' property */ | 
|  | 44 #define AF_PROP_INCREASE_X_HEIGHT_MIN  6 | 
|  | 45 #define AF_PROP_INCREASE_X_HEIGHT_MAX  0 | 
|  | 46 | 
|  | 47 | 
| 30   /************************************************************************/ | 48   /************************************************************************/ | 
| 31   /************************************************************************/ | 49   /************************************************************************/ | 
| 32   /*****                                                              *****/ | 50   /*****                                                              *****/ | 
| 33   /*****                  F A C E   G L O B A L S                     *****/ | 51   /*****                  F A C E   G L O B A L S                     *****/ | 
| 34   /*****                                                              *****/ | 52   /*****                                                              *****/ | 
| 35   /************************************************************************/ | 53   /************************************************************************/ | 
| 36   /************************************************************************/ | 54   /************************************************************************/ | 
| 37 | 55 | 
| 38 | 56 | 
| 39   /* | 57   /* | 
|  | 58    *  Note that glyph_scripts[] is used to map each glyph into | 
|  | 59    *  an index into the `af_script_classes' array. | 
|  | 60    * | 
|  | 61    */ | 
|  | 62   typedef struct  AF_FaceGlobalsRec_ | 
|  | 63   { | 
|  | 64     FT_Face           face; | 
|  | 65     FT_Long           glyph_count;    /* same as face->num_glyphs */ | 
|  | 66     FT_Byte*          glyph_scripts; | 
|  | 67 | 
|  | 68     /* per-face auto-hinter properties */ | 
|  | 69     FT_UInt           increase_x_height; | 
|  | 70 | 
|  | 71     AF_ScriptMetrics  metrics[AF_SCRIPT_MAX]; | 
|  | 72 | 
|  | 73     AF_Module         module;         /* to access global properties */ | 
|  | 74 | 
|  | 75   } AF_FaceGlobalsRec; | 
|  | 76 | 
|  | 77 | 
|  | 78   /* | 
| 40    *  model the global hints data for a given face, decomposed into | 79    *  model the global hints data for a given face, decomposed into | 
| 41    *  script-specific items | 80    *  script-specific items | 
| 42    */ | 81    */ | 
| 43   typedef struct AF_FaceGlobalsRec_*   AF_FaceGlobals; |  | 
| 44 |  | 
| 45 | 82 | 
| 46   FT_LOCAL( FT_Error ) | 83   FT_LOCAL( FT_Error ) | 
| 47   af_face_globals_new( FT_Face          face, | 84   af_face_globals_new( FT_Face          face, | 
| 48                        AF_FaceGlobals  *aglobals ); | 85                        AF_FaceGlobals  *aglobals, | 
|  | 86                        AF_Module        module ); | 
| 49 | 87 | 
| 50   FT_LOCAL( FT_Error ) | 88   FT_LOCAL( FT_Error ) | 
| 51   af_face_globals_get_metrics( AF_FaceGlobals     globals, | 89   af_face_globals_get_metrics( AF_FaceGlobals     globals, | 
| 52                                FT_UInt            gindex, | 90                                FT_UInt            gindex, | 
| 53                                FT_UInt            options, | 91                                FT_UInt            options, | 
| 54                                AF_ScriptMetrics  *ametrics ); | 92                                AF_ScriptMetrics  *ametrics ); | 
| 55 | 93 | 
| 56   FT_LOCAL( void ) | 94   FT_LOCAL( void ) | 
| 57   af_face_globals_free( AF_FaceGlobals  globals ); | 95   af_face_globals_free( AF_FaceGlobals  globals ); | 
| 58 | 96 | 
| 59   FT_LOCAL_DEF( FT_Bool ) | 97   FT_LOCAL_DEF( FT_Bool ) | 
| 60   af_face_globals_is_digit( AF_FaceGlobals  globals, | 98   af_face_globals_is_digit( AF_FaceGlobals  globals, | 
| 61                             FT_UInt         gindex ); | 99                             FT_UInt         gindex ); | 
| 62 | 100 | 
| 63   /* */ | 101   /* */ | 
| 64 | 102 | 
| 65 | 103 | 
| 66 FT_END_HEADER | 104 FT_END_HEADER | 
| 67 | 105 | 
| 68 #endif /* __AFGLOBAL_H__ */ | 106 #endif /* __AFGLOBAL_H__ */ | 
| 69 | 107 | 
| 70 | 108 | 
| 71 /* END */ | 109 /* END */ | 
| OLD | NEW | 
|---|