/***************************************************************************/ /* */ /* svlayout.h */ /* */ /* The FreeType Layout services (specification). */ /* */ /* Copyright 2003 by */ /* Masatake YAMATO and Redhat K.K. */ /* */ /* This file 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. */ /* */ /***************************************************************************/ /***************************************************************************/ /* Development of the code in this file is support of */ /* Information-technology Promotion Agency, Japan. */ /***************************************************************************/ #ifndef __SVLAYOUT_H__ #define __SVLAYOUT_H__ #include FT_INTERNAL_SERVICE_H #include FT_LAYOUT_H #include FT_INTERNAL_FTL_TYPES_H FT_BEGIN_HEADER #define FT_SERVICE_ID_LAYOUT "layout" typedef FT_Error (*FTL_Get_Font_Func)( FT_Face face, FTL_Font* font ); typedef FTL_EngineType (*FTL_Get_EngineType_Func) ( FT_Face face ); typedef FT_Error (*FTL_New_FeaturesRequest_Func)( FT_Face face, FTL_FeaturesRequest* request ); typedef FT_Error (*FTL_Done_FeaturesRequest_Func)( FTL_FeaturesRequest request ); typedef FT_Error (*FTL_Copy_FeaturesRequest_Func)( FTL_FeaturesRequest from, FTL_FeaturesRequest to ); typedef FT_UShort (*FTL_Get_LigatureCaret_Count_Func) ( FT_Face face, FT_UShort glyphID ); typedef FT_UShort (*FTL_Get_LigatureCaret_Division_Func) ( FT_Face face, FT_UShort glyphID, FT_UShort nth ); typedef FT_Error (*FTL_Substitute_Glyphs_Func) ( FT_Face face, FTL_FeaturesRequest request, FTL_GlyphArray in, FTL_GlyphArray out ); FT_DEFINE_SERVICE( Layout ) { FTL_Get_Font_Func get_font; FTL_Get_EngineType_Func get_engine_type; FTL_New_FeaturesRequest_Func new_features_request; FTL_Done_FeaturesRequest_Func done_features_request; FTL_Copy_FeaturesRequest_Func copy_features_request; FTL_Get_LigatureCaret_Count_Func get_ligature_caret_count; FTL_Get_LigatureCaret_Division_Func get_ligature_caret_division; FTL_Substitute_Glyphs_Func substitute_glyphs; }; /* */ FT_END_HEADER #endif /* __SVLAYOUT_H__ */ /* END */