Eneboo - Documentación para desarrolladores
|
00001 /******************************************************************* 00002 * 00003 * ftxopenf.h 00004 * 00005 * internal TrueType Open functions 00006 * 00007 * Copyright 1996-2000 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 #ifndef FTXOPENF_H 00019 #define FTXOPENF_H 00020 00021 #include "ftxopen.h" 00022 00023 #ifdef __cplusplus 00024 extern "C" { 00025 #endif 00026 00027 /* functions from ftxopen.c */ 00028 00029 FT_Error Load_ScriptList( TTO_ScriptList* sl, 00030 FT_Stream stream ); 00031 FT_Error Load_FeatureList( TTO_FeatureList* fl, 00032 FT_Stream input ); 00033 FT_Error Load_LookupList( TTO_LookupList* ll, 00034 FT_Stream input, 00035 TTO_Type type ); 00036 00037 FT_Error Load_Coverage( TTO_Coverage* c, 00038 FT_Stream input ); 00039 FT_Error Load_ClassDefinition( TTO_ClassDefinition* cd, 00040 FT_UShort limit, 00041 FT_Stream input ); 00042 FT_Error Load_EmptyClassDefinition( TTO_ClassDefinition* cd, 00043 FT_Stream input ); 00044 FT_Error Load_Device( TTO_Device* d, 00045 FT_Stream input ); 00046 00047 void Free_ScriptList( TTO_ScriptList* sl, 00048 FT_Memory memory ); 00049 void Free_FeatureList( TTO_FeatureList* fl, 00050 FT_Memory memory ); 00051 void Free_LookupList( TTO_LookupList* ll, 00052 TTO_Type type, 00053 FT_Memory memory ); 00054 00055 void Free_Coverage( TTO_Coverage* c, 00056 FT_Memory memory ); 00057 void Free_ClassDefinition( TTO_ClassDefinition* cd, 00058 FT_Memory memory ); 00059 void Free_Device( TTO_Device* d, 00060 FT_Memory memory ); 00061 00062 00063 /* functions from ftxgsub.c */ 00064 00065 FT_Error Load_SingleSubst( TTO_SingleSubst* ss, 00066 FT_Stream input ); 00067 FT_Error Load_MultipleSubst( TTO_MultipleSubst* ms, 00068 FT_Stream input ); 00069 FT_Error Load_AlternateSubst( TTO_AlternateSubst* as, 00070 FT_Stream input ); 00071 FT_Error Load_LigatureSubst( TTO_LigatureSubst* ls, 00072 FT_Stream input ); 00073 FT_Error Load_ContextSubst( TTO_ContextSubst* cs, 00074 FT_Stream input ); 00075 FT_Error Load_ChainContextSubst( TTO_ChainContextSubst* ccs, 00076 FT_Stream input ); 00077 00078 void Free_SingleSubst( TTO_SingleSubst* ss, 00079 FT_Memory memory ); 00080 void Free_MultipleSubst( TTO_MultipleSubst* ms, 00081 FT_Memory memory ); 00082 void Free_AlternateSubst( TTO_AlternateSubst* as, 00083 FT_Memory memory ); 00084 void Free_LigatureSubst( TTO_LigatureSubst* ls, 00085 FT_Memory memory ); 00086 void Free_ContextSubst( TTO_ContextSubst* cs, 00087 FT_Memory memory ); 00088 void Free_ChainContextSubst( TTO_ChainContextSubst* ccs, 00089 FT_Memory memory ); 00090 00091 00092 /* functions from ftxgpos.c */ 00093 00094 FT_Error Load_SinglePos( TTO_SinglePos* sp, 00095 FT_Stream input ); 00096 FT_Error Load_PairPos( TTO_PairPos* pp, 00097 FT_Stream input ); 00098 FT_Error Load_CursivePos( TTO_CursivePos* cp, 00099 FT_Stream input ); 00100 FT_Error Load_MarkBasePos( TTO_MarkBasePos* mbp, 00101 FT_Stream input ); 00102 FT_Error Load_MarkLigPos( TTO_MarkLigPos* mlp, 00103 FT_Stream input ); 00104 FT_Error Load_MarkMarkPos( TTO_MarkMarkPos* mmp, 00105 FT_Stream input ); 00106 FT_Error Load_ContextPos( TTO_ContextPos* cp, 00107 FT_Stream input ); 00108 FT_Error Load_ChainContextPos( TTO_ChainContextPos* ccp, 00109 FT_Stream input ); 00110 00111 void Free_SinglePos( TTO_SinglePos* sp, 00112 FT_Memory memory ); 00113 void Free_PairPos( TTO_PairPos* pp, 00114 FT_Memory memory ); 00115 void Free_CursivePos( TTO_CursivePos* cp, 00116 FT_Memory memory ); 00117 void Free_MarkBasePos( TTO_MarkBasePos* mbp, 00118 FT_Memory memory ); 00119 void Free_MarkLigPos( TTO_MarkLigPos* mlp, 00120 FT_Memory memory ); 00121 void Free_MarkMarkPos( TTO_MarkMarkPos* mmp, 00122 FT_Memory memory ); 00123 void Free_ContextPos( TTO_ContextPos* cp, 00124 FT_Memory memory ); 00125 void Free_ChainContextPos( TTO_ChainContextPos* ccp, 00126 FT_Memory memory ); 00127 /* query functions */ 00128 00129 FT_Error Coverage_Index( TTO_Coverage* c, 00130 FT_UShort glyphID, 00131 FT_UShort* index ); 00132 FT_Error Get_Class( TTO_ClassDefinition* cd, 00133 FT_UShort glyphID, 00134 FT_UShort* class, 00135 FT_UShort* index ); 00136 FT_Error Get_Device( TTO_Device* d, 00137 FT_UShort size, 00138 FT_Short* value ); 00139 00140 00141 /* functions from ftxgdef.c */ 00142 00143 FT_Error Add_Glyph_Property( TTO_GDEFHeader* gdef, 00144 FT_UShort glyphID, 00145 FT_UShort property ); 00146 00147 FT_Error Check_Property( TTO_GDEFHeader* gdef, 00148 OTL_GlyphItem item, 00149 FT_UShort flags, 00150 FT_UShort* property ); 00151 00152 #define CHECK_Property( gdef, index, flags, property ) \ 00153 ( ( error = Check_Property( (gdef), (index), (flags), \ 00154 (property) ) ) != TT_Err_Ok ) 00155 00156 #ifdef __cplusplus 00157 } 00158 #endif 00159 00160 #endif /* FTXOPENF_H */ 00161 00162 00163 /* END */