#include namespace hgl { namespace graph { FontBitmap *FontSourceSingle::GetCharBitmap(const u32char &ch) { if(hgl::isspace(ch))return(nullptr); //不能显示的数据或是空格 FontBitmap *bmp; if(chars_bitmap.Get(ch,bmp)) return bmp; bmp=new FontBitmap; memset(bmp,0,sizeof(FontBitmap)); if(!MakeCharBitmap(bmp,ch)) { delete bmp; chars_bitmap.Add(ch,nullptr); return(nullptr); } else { chars_bitmap.Add(ch,bmp); return bmp; } } const bool FontSourceSingle::GetCharMetrics(CharMetricsInfo &adv_info,const u32char &ch) { FontBitmap *bmp=GetCharBitmap(ch); if(!bmp) return false; adv_info=bmp->metrics_info; return(true); } }//namespace graph }//namespace hgl