/***************************************************************************/ | |
/* */ | |
/* afloader.h */ | |
/* */ | |
/* Auto-fitter glyph loading routines (specification). */ | |
/* */ | |
/* Copyright 2003-2015 by */ | |
/* David Turner, Robert Wilhelm, and Werner Lemberg. */ | |
/* */ | |
/* This file is part of the FreeType project, and may only be used, */ | |
/* modified, and distributed under the terms of the FreeType project */ | |
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */ | |
/* this file you indicate that you have read the license and */ | |
/* understand and accept it fully. */ | |
/* */ | |
/***************************************************************************/ | |
#ifndef __AFLOADER_H__ | |
#define __AFLOADER_H__ | |
#include "afhints.h" | |
#include "afmodule.h" | |
#include "afglobal.h" | |
FT_BEGIN_HEADER | |
/* | |
* The autofitter module's (global) data structure to communicate with | |
* actual fonts. If necessary, `local' data like the current face, the | |
* current face's auto-hint data, or the current glyph's parameters | |
* relevant to auto-hinting are `swapped in'. Cf. functions like | |
* `af_loader_reset' and `af_loader_load_g'. | |
*/ | |
typedef struct AF_LoaderRec_ | |
{ | |
/* current face data */ | |
FT_Face face; | |
AF_FaceGlobals globals; | |
/* current glyph data */ | |
AF_GlyphHints hints; | |
AF_StyleMetrics metrics; | |
FT_Bool transformed; | |
FT_Matrix trans_matrix; | |
FT_Vector trans_delta; | |
FT_Vector pp1; | |
FT_Vector pp2; | |
/* we don't handle vertical phantom points */ | |
} AF_LoaderRec, *AF_Loader; | |
FT_LOCAL( void ) | |
af_loader_init( AF_Loader loader, | |
AF_GlyphHints hints ); | |
FT_LOCAL( FT_Error ) | |
af_loader_reset( AF_Loader loader, | |
AF_Module module, | |
FT_Face face ); | |
FT_LOCAL( void ) | |
af_loader_done( AF_Loader loader ); | |
FT_LOCAL( FT_Error ) | |
af_loader_load_glyph( AF_Loader loader, | |
AF_Module module, | |
FT_Face face, | |
FT_UInt gindex, | |
FT_Int32 load_flags ); | |
FT_LOCAL_DEF( FT_Int32 ) | |
af_loader_compute_darkening( AF_Loader loader, | |
FT_Face face, | |
FT_Pos standard_width ); | |
/* */ | |
FT_END_HEADER | |
#endif /* __AFLOADER_H__ */ | |
/* END */ |