1 /***************************************************************************/
5 /* Type 1 font loader (specification). */
7 /* Copyright 1996-2001, 2002, 2004, 2006, 2007 by */
8 /* David Turner, Robert Wilhelm, and Werner Lemberg. */
10 /* This file is part of the FreeType project, and may only be used, */
11 /* modified, and distributed under the terms of the FreeType project */
12 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */
13 /* this file you indicate that you have read the license and */
14 /* understand and accept it fully. */
16 /***************************************************************************/
24 #include FT_INTERNAL_STREAM_H
25 #include FT_INTERNAL_POSTSCRIPT_AUX_H
26 #include FT_MULTIPLE_MASTERS_H
34 typedef struct T1_Loader_
36 T1_ParserRec parser
; /* parser used to read the stream */
38 FT_Int num_chars
; /* number of characters in encoding */
39 PS_TableRec encoding_table
; /* PS_Table used to store the */
40 /* encoding character names */
43 PS_TableRec glyph_names
;
44 PS_TableRec charstrings
;
45 PS_TableRec swap_table
; /* For moving .notdef glyph to index 0. */
51 FT_UInt keywords_encountered
; /* T1_LOADER_ENCOUNTERED_XXX */
53 } T1_LoaderRec
, *T1_Loader
;
56 /* treatment of some keywords differs depending on whether */
57 /* they precede or follow certain other keywords */
59 #define T1_PRIVATE ( 1 << 0 )
60 #define T1_FONTDIR_AFTER_PRIVATE ( 1 << 1 )
64 T1_Open_Face( T1_Face face
);
66 #ifndef T1_CONFIG_OPTION_NO_MM_SUPPORT
69 T1_Get_Multi_Master( T1_Face face
,
70 FT_Multi_Master
* master
);
72 FT_LOCAL_DEF( FT_Error
)
73 T1_Get_MM_Var( T1_Face face
,
77 T1_Set_MM_Blend( T1_Face face
,
82 T1_Set_MM_Design( T1_Face face
,
86 FT_LOCAL_DEF( FT_Error
)
87 T1_Set_Var_Design( T1_Face face
,
92 T1_Done_Blend( T1_Face face
);
94 #endif /* !T1_CONFIG_OPTION_NO_MM_SUPPORT */
99 #endif /* __T1LOAD_H__ */