2005-03-03 18:09:08 +01:00
|
|
|
/***************************************************************************/
|
|
|
|
/* */
|
|
|
|
/* afloader.h */
|
|
|
|
/* */
|
|
|
|
/* Auto-fitter glyph loading routines (specification). */
|
|
|
|
/* */
|
2015-01-17 20:41:43 +01:00
|
|
|
/* Copyright 2003-2015 by */
|
2005-03-03 18:09:08 +01:00
|
|
|
/* 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. */
|
|
|
|
/* */
|
|
|
|
/***************************************************************************/
|
|
|
|
|
|
|
|
|
2011-03-28 15:41:49 +02:00
|
|
|
#ifndef __AFLOADER_H__
|
|
|
|
#define __AFLOADER_H__
|
2004-02-03 22:34:29 +01:00
|
|
|
|
|
|
|
#include "afhints.h"
|
2015-01-14 16:01:19 +01:00
|
|
|
#include "afmodule.h"
|
2004-02-03 22:34:29 +01:00
|
|
|
#include "afglobal.h"
|
|
|
|
|
2005-03-03 18:09:08 +01:00
|
|
|
|
2004-02-03 22:34:29 +01:00
|
|
|
FT_BEGIN_HEADER
|
|
|
|
|
2012-09-11 19:45:36 +02:00
|
|
|
/*
|
2012-09-14 12:26:57 +02:00
|
|
|
* 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'.
|
2012-09-11 19:45:36 +02:00
|
|
|
*/
|
|
|
|
|
|
|
|
typedef struct AF_LoaderRec_
|
2004-02-03 22:34:29 +01:00
|
|
|
{
|
2012-09-11 19:45:36 +02:00
|
|
|
/* current face data */
|
|
|
|
FT_Face face;
|
|
|
|
AF_FaceGlobals globals;
|
|
|
|
|
|
|
|
/* current glyph data */
|
2015-01-14 19:16:12 +01:00
|
|
|
AF_GlyphHints hints;
|
2013-12-18 12:59:35 +01:00
|
|
|
AF_StyleMetrics metrics;
|
2004-02-03 22:34:29 +01:00
|
|
|
FT_Bool transformed;
|
|
|
|
FT_Matrix trans_matrix;
|
|
|
|
FT_Vector trans_delta;
|
|
|
|
FT_Vector pp1;
|
|
|
|
FT_Vector pp2;
|
2004-03-27 09:43:17 +01:00
|
|
|
/* we don't handle vertical phantom points */
|
2004-02-03 22:34:29 +01:00
|
|
|
|
|
|
|
} AF_LoaderRec, *AF_Loader;
|
|
|
|
|
|
|
|
|
2015-01-14 19:07:54 +01:00
|
|
|
FT_LOCAL( void )
|
2015-01-14 19:16:12 +01:00
|
|
|
af_loader_init( AF_Loader loader,
|
|
|
|
AF_GlyphHints hints );
|
2004-02-03 22:34:29 +01:00
|
|
|
|
|
|
|
|
|
|
|
FT_LOCAL( FT_Error )
|
2015-01-14 16:01:19 +01:00
|
|
|
af_loader_reset( AF_Loader loader,
|
|
|
|
AF_Module module,
|
2004-02-03 22:34:29 +01:00
|
|
|
FT_Face face );
|
|
|
|
|
|
|
|
|
|
|
|
FT_LOCAL( void )
|
2015-01-14 16:01:19 +01:00
|
|
|
af_loader_done( AF_Loader loader );
|
2004-02-03 22:34:29 +01:00
|
|
|
|
|
|
|
|
|
|
|
FT_LOCAL( FT_Error )
|
2015-01-14 16:01:19 +01:00
|
|
|
af_loader_load_glyph( AF_Loader loader,
|
|
|
|
AF_Module module,
|
2004-02-03 22:34:29 +01:00
|
|
|
FT_Face face,
|
|
|
|
FT_UInt gindex,
|
2012-02-07 09:40:11 +01:00
|
|
|
FT_Int32 load_flags );
|
2004-02-03 22:34:29 +01:00
|
|
|
|
|
|
|
/* */
|
|
|
|
|
2005-03-03 18:09:08 +01:00
|
|
|
|
2004-02-03 22:34:29 +01:00
|
|
|
FT_END_HEADER
|
|
|
|
|
2011-03-28 15:41:49 +02:00
|
|
|
#endif /* __AFLOADER_H__ */
|
2005-03-03 18:09:08 +01:00
|
|
|
|
|
|
|
|
|
|
|
/* END */
|