1*37da2899SCharles.Forsyth /***************************************************************************/ 2*37da2899SCharles.Forsyth /* */ 3*37da2899SCharles.Forsyth /* ahhint.h */ 4*37da2899SCharles.Forsyth /* */ 5*37da2899SCharles.Forsyth /* Glyph hinter (declaration). */ 6*37da2899SCharles.Forsyth /* */ 7*37da2899SCharles.Forsyth /* Copyright 2000-2001, 2002 Catharon Productions Inc. */ 8*37da2899SCharles.Forsyth /* Author: David Turner */ 9*37da2899SCharles.Forsyth /* */ 10*37da2899SCharles.Forsyth /* This file is part of the Catharon Typography Project and shall only */ 11*37da2899SCharles.Forsyth /* be used, modified, and distributed under the terms of the Catharon */ 12*37da2899SCharles.Forsyth /* Open Source License that should come with this file under the name */ 13*37da2899SCharles.Forsyth /* `CatharonLicense.txt'. By continuing to use, modify, or distribute */ 14*37da2899SCharles.Forsyth /* this file you indicate that you have read the license and */ 15*37da2899SCharles.Forsyth /* understand and accept it fully. */ 16*37da2899SCharles.Forsyth /* */ 17*37da2899SCharles.Forsyth /* Note that this license is compatible with the FreeType license. */ 18*37da2899SCharles.Forsyth /* */ 19*37da2899SCharles.Forsyth /***************************************************************************/ 20*37da2899SCharles.Forsyth 21*37da2899SCharles.Forsyth 22*37da2899SCharles.Forsyth #ifndef __AHHINT_H__ 23*37da2899SCharles.Forsyth #define __AHHINT_H__ 24*37da2899SCharles.Forsyth 25*37da2899SCharles.Forsyth 26*37da2899SCharles.Forsyth #include <ft2build.h> 27*37da2899SCharles.Forsyth #include "ahglobal.h" 28*37da2899SCharles.Forsyth 29*37da2899SCharles.Forsyth 30*37da2899SCharles.Forsyth FT_BEGIN_HEADER 31*37da2899SCharles.Forsyth 32*37da2899SCharles.Forsyth 33*37da2899SCharles.Forsyth #define AH_HINT_DEFAULT 0 34*37da2899SCharles.Forsyth #define AH_HINT_NO_ALIGNMENT 1 35*37da2899SCharles.Forsyth #define AH_HINT_NO_HORZ_EDGES 0x200000L /* temporary hack */ 36*37da2899SCharles.Forsyth #define AH_HINT_NO_VERT_EDGES 0x400000L /* temporary hack */ 37*37da2899SCharles.Forsyth 38*37da2899SCharles.Forsyth 39*37da2899SCharles.Forsyth /* create a new empty hinter object */ 40*37da2899SCharles.Forsyth FT_LOCAL( FT_Error ) 41*37da2899SCharles.Forsyth ah_hinter_new( FT_Library library, 42*37da2899SCharles.Forsyth AH_Hinter* ahinter ); 43*37da2899SCharles.Forsyth 44*37da2899SCharles.Forsyth /* Load a hinted glyph in the hinter */ 45*37da2899SCharles.Forsyth FT_LOCAL( FT_Error ) 46*37da2899SCharles.Forsyth ah_hinter_load_glyph( AH_Hinter hinter, 47*37da2899SCharles.Forsyth FT_GlyphSlot slot, 48*37da2899SCharles.Forsyth FT_Size size, 49*37da2899SCharles.Forsyth FT_UInt glyph_index, 50*37da2899SCharles.Forsyth FT_Int32 load_flags ); 51*37da2899SCharles.Forsyth 52*37da2899SCharles.Forsyth /* finalize a hinter object */ 53*37da2899SCharles.Forsyth FT_LOCAL( void ) 54*37da2899SCharles.Forsyth ah_hinter_done( AH_Hinter hinter ); 55*37da2899SCharles.Forsyth 56*37da2899SCharles.Forsyth FT_LOCAL( void ) 57*37da2899SCharles.Forsyth ah_hinter_done_face_globals( AH_Face_Globals globals ); 58*37da2899SCharles.Forsyth 59*37da2899SCharles.Forsyth FT_LOCAL( void ) 60*37da2899SCharles.Forsyth ah_hinter_get_global_hints( AH_Hinter hinter, 61*37da2899SCharles.Forsyth FT_Face face, 62*37da2899SCharles.Forsyth void** global_hints, 63*37da2899SCharles.Forsyth long* global_len ); 64*37da2899SCharles.Forsyth 65*37da2899SCharles.Forsyth FT_LOCAL( void ) 66*37da2899SCharles.Forsyth ah_hinter_done_global_hints( AH_Hinter hinter, 67*37da2899SCharles.Forsyth void* global_hints ); 68*37da2899SCharles.Forsyth 69*37da2899SCharles.Forsyth 70*37da2899SCharles.Forsyth FT_END_HEADER 71*37da2899SCharles.Forsyth 72*37da2899SCharles.Forsyth #endif /* __AHHINT_H__ */ 73*37da2899SCharles.Forsyth 74*37da2899SCharles.Forsyth 75*37da2899SCharles.Forsyth /* END */ 76