#ifndef HGL_GRAPH_TILE_FONT_INCLUDE #define HGL_GRAPH_TILE_FONT_INCLUDE #include #include #include namespace hgl { namespace graph { using TileUVFloatMap=Map; using TileResPool=RefObjectPool; /** * Tile字符管理
* 本模块允许有多个字符数据来源,每个来源也可以对应多个unicode块, 但一个unicode块只能对应一个字体数据来源 */ class TileFont { FontSource *source; TileData *tile_data; TileResPool to_res; SortedSets not_bitmap_chars; public: FontSource *GetFontSource (){return source;} TileData * GetTileData (){return tile_data;} Texture2D * GetTexture (){return tile_data->GetTexture();} public: TileFont(TileData *td,FontSource *fs); virtual ~TileFont(); bool Registry(TileUVFloatMap &,SortedSets &chars_sets); ///<注册要使用的字符 void Unregistry(const List &); ///<注销要使用的字符 };//class TileFont }//namespace graph }//namespace hgl #endif//HGL_GRAPH_TILE_FONT_INCLUDE