1、通过InstalledFontCollection对象获取系统的字体系列
CColorDialog dlg;//弹出MFC颜色对话框
dlg.DoModal();
COLORREF color;
color=dlg.GetColor();
Graphics graphics(GetDC()->m_hDC);
InstalledFontCollection installedFondColl;//系统所有已安装的字体系列对象
int iFontCount=installedFondColl.GetFamilyCount();//字体系列种类个数
FontFamily font_family[500];//字体系列数组,用来存储每一个字体系列
WCHAR font_name[50];
memset(font_name,0,sizeof(font_name));
int iFind=0;
installedFondColl.GetFamilies(iFontCount,font_family,&iFind);//得到系统所有已安装的字体系列
PointF point;
Gdiplus::SolidBrush brush(Color(255,GetRValue(color),GetGValue(color),GetBValue(color)));
for(int i=0;i<iFontCount;i++)
{
font_family[i].GetFamilyName(font_name);//获得指定字体系列名字
Gdiplus::Font font(&font_family[i],25,FontStyleRegular,UnitPixel);//通过指定字体系列构建字体
if(0==i%5)
{
point.Y+=30;
}
if(0==i%10)
{
point.X=0;
}
graphics.DrawString(font_name,-1,&font,point,&brush);
point.X+=120;
}