[英]How can I get a list of installed fonts on Windows including font style using c++
[英]How can I get a list of installed fonts on Windows, using unmanaged C++?
我进行了一些探索,到目前为止,我已经找到了EnumFontFamiliesEx(...)。 但是,似乎此函数用于返回给定字体(例如“ Arial”)的所有字符集。
我不太清楚如何开始获得已安装字体的列表。 任何帮助/建议,将不胜感激。
先感谢您。
您可以这样做:
LOGFONT lf;
lf.lfFaceName[0] = '\0';
lf.lfCharSet = DEFAULT_CHARSET;
HDC hDC = ::GetDC();
EnumFontFamiliesEx(hDC, &lf, (FONTENUMPROC)&EnumFontFamExProc, 0, 0);
ReleaseDC(hDC);
然后定义一个回调函数:
int CALLBACK EnumFontFamExProc(
ENUMLOGFONTEX *lpelfe,
NEWTEXTMETRICEX *lpntme,
DWORD FontType,
LPARAM lParam
)
{
AfxMessageBox(lpelfe->elfFullName);
//Return non--zero to continue enumeration
return 1;
}
您可能想在这里看看,因为那里的代码说明了如何使用EnumFontFamiliesEx
获取所有字体名称。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.