00001 /***************************************************************************/ 00002 /* */ 00003 /* afloader.h */ 00004 /* */ 00005 /* Auto-fitter glyph loading routines (specification). */ 00006 /* */ 00007 /* Copyright 2003, 2004, 2005 by */ 00008 /* David Turner, Robert Wilhelm, and Werner Lemberg. */ 00009 /* */ 00010 /* This file is part of the FreeType project, and may only be used, */ 00011 /* modified, and distributed under the terms of the FreeType project */ 00012 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ 00013 /* this file you indicate that you have read the license and */ 00014 /* understand and accept it fully. */ 00015 /* */ 00016 /***************************************************************************/ 00017 00018 00019 #ifndef __AF_LOADER_H__ 00020 #define __AF_LOADER_H__ 00021 00022 #include "afhints.h" 00023 #include "afglobal.h" 00024 00025 00026 FT_BEGIN_HEADER 00027 00028 typedef struct AF_LoaderRec_ 00029 { 00030 FT_Face face; /* current face */ 00031 AF_FaceGlobals globals; /* current face globals */ 00032 FT_GlyphLoader gloader; /* glyph loader */ 00033 AF_GlyphHintsRec hints; 00034 AF_ScriptMetrics metrics; 00035 FT_Bool transformed; 00036 FT_Matrix trans_matrix; 00037 FT_Vector trans_delta; 00038 FT_Vector pp1; 00039 FT_Vector pp2; 00040 /* we don't handle vertical phantom points */ 00041 00042 } AF_LoaderRec, *AF_Loader; 00043 00044 00045 FT_LOCAL( FT_Error ) 00046 af_loader_init( AF_Loader loader, 00047 FT_Memory memory ); 00048 00049 00050 FT_LOCAL( FT_Error ) 00051 af_loader_reset( AF_Loader loader, 00052 FT_Face face ); 00053 00054 00055 FT_LOCAL( void ) 00056 af_loader_done( AF_Loader loader ); 00057 00058 00059 FT_LOCAL( FT_Error ) 00060 af_loader_load_glyph( AF_Loader loader, 00061 FT_Face face, 00062 FT_UInt gindex, 00063 FT_UInt32 load_flags ); 00064 00065 /* */ 00066 00067 00068 FT_END_HEADER 00069 00070 #endif /* __AF_LOADER_H__ */ 00071 00072 00073 /* END */