diff options
Diffstat (limited to 'modules/freetype2/src/type1/t1load.h')
-rw-r--r-- | modules/freetype2/src/type1/t1load.h | 126 |
1 files changed, 126 insertions, 0 deletions
diff --git a/modules/freetype2/src/type1/t1load.h b/modules/freetype2/src/type1/t1load.h new file mode 100644 index 0000000000..d8c9d2d8ab --- /dev/null +++ b/modules/freetype2/src/type1/t1load.h @@ -0,0 +1,126 @@ +/**************************************************************************** + * + * t1load.h + * + * Type 1 font loader (specification). + * + * Copyright (C) 1996-2023 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 T1LOAD_H_ +#define T1LOAD_H_ + + +#include <freetype/internal/ftstream.h> +#include <freetype/internal/psaux.h> +#include <freetype/ftmm.h> + +#include "t1parse.h" + + +FT_BEGIN_HEADER + + + typedef struct T1_Loader_ + { + T1_ParserRec parser; /* parser used to read the stream */ + + FT_Int num_chars; /* number of characters in encoding */ + PS_TableRec encoding_table; /* PS_Table used to store the */ + /* encoding character names */ + + FT_Int num_glyphs; + PS_TableRec glyph_names; + PS_TableRec charstrings; + PS_TableRec swap_table; /* For moving .notdef glyph to index 0. */ + + FT_Int num_subrs; + PS_TableRec subrs; + FT_Hash subrs_hash; + FT_Bool fontdata; + + FT_UInt keywords_encountered; /* T1_LOADER_ENCOUNTERED_XXX */ + + } T1_LoaderRec, *T1_Loader; + + + /* treatment of some keywords differs depending on whether */ + /* they precede or follow certain other keywords */ + +#define T1_PRIVATE ( 1 << 0 ) +#define T1_FONTDIR_AFTER_PRIVATE ( 1 << 1 ) + + + FT_LOCAL( FT_Error ) + T1_Open_Face( T1_Face face ); + +#ifndef T1_CONFIG_OPTION_NO_MM_SUPPORT + + FT_LOCAL( FT_Error ) + T1_Get_Multi_Master( FT_Face face, + FT_Multi_Master* master ); + + FT_LOCAL( FT_Error ) + T1_Get_MM_Var( FT_Face face, + FT_MM_Var* *master ); + + FT_LOCAL( FT_Error ) + T1_Set_MM_Blend( FT_Face face, + FT_UInt num_coords, + FT_Fixed* coords ); + + FT_LOCAL( FT_Error ) + T1_Get_MM_Blend( FT_Face face, + FT_UInt num_coords, + FT_Fixed* coords ); + + FT_LOCAL( FT_Error ) + T1_Set_MM_Design( FT_Face face, + FT_UInt num_coords, + FT_Long* coords ); + + FT_LOCAL( FT_Error ) + T1_Reset_MM_Blend( FT_Face face, + FT_UInt instance_index ); + + FT_LOCAL( FT_Error ) + T1_Get_Var_Design( FT_Face face, + FT_UInt num_coords, + FT_Fixed* coords ); + + FT_LOCAL( FT_Error ) + T1_Set_Var_Design( FT_Face face, + FT_UInt num_coords, + FT_Fixed* coords ); + + FT_LOCAL( void ) + T1_Done_Blend( FT_Face face ); + + FT_LOCAL( FT_Error ) + T1_Set_MM_WeightVector( FT_Face face, + FT_UInt len, + FT_Fixed* weightvector ); + + FT_LOCAL( FT_Error ) + T1_Get_MM_WeightVector( FT_Face face, + FT_UInt* len, + FT_Fixed* weightvector ); + +#endif /* !T1_CONFIG_OPTION_NO_MM_SUPPORT */ + + +FT_END_HEADER + +#endif /* T1LOAD_H_ */ + + +/* END */ |