MFC windows字体载入

zyrr159487 2010-07-30 11:38:26
就是普通的windows字体的载入,createfont什么的是可以,不过我这里有个问题,就是我要去指定的位置,比如桌面,载入它,所以问题来了,载入时并不知道它到底是什么字体。所以问题就是如何解析载入的windows字体
...全文
136 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Eleven 2010-07-30
  • 打赏
  • 举报
回复
[Quote=引用楼主 zyrr159487 的回复:]
就是普通的windows字体的载入,createfont什么的是可以,不过我这里有个问题,就是我要去指定的位置,比如桌面,载入它,所以问题来了,载入时并不知道它到底是什么字体。所以问题就是如何解析载入的windows字体
[/Quote]
lz是要得到当前设置的字体?
MoXiaoRab 2010-07-30
  • 打赏
  • 举报
回复
先使用 AddFontResource 把字体送入 Windows 字体列表。
然后使用 SendMessage(HWND_BROADCAST,WM_FONTCHANGE,0,0) 广播通知。

接下来就是

font.CreateFontIndirect(&lf);
oldfont = pDC->SelectObject(&font);

LOGFONT lf;
lf.lfHeight = 240;
lf.lfWidth = 120;
lf.lfEscapement = m_ang;
lf.lfOrientation = m_ang;
lf.lfWeight = 520;
lf.lfItalic = 0;
lf.lfUnderline = 0;
lf.lfStrikeOut = 0;
lf.lfCharSet = GB2312_CHARSET;
lf.lfOutPrecision = 0;
lf.lfClipPrecision = CLIP_STROKE_PRECIS;
lf.lfQuality = 0;
lf.lfPitchAndFamily = 0;
strcpy(lf.lfFaceName, "字体名");
font.CreateFontIndirect(&lf);
oldfont = pDC->SelectObject(&font);
  • 打赏
  • 举报
回复
要获取系统字体?
zyrr159487 2010-07-30
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 tr0j4n 的回复:]
先使用 AddFontResource 把字体送入 Windows 字体列表。
然后使用 SendMessage(HWND_BROADCAST,WM_FONTCHANGE,0,0) 广播通知。

接下来就是

C/C++ code

font.CreateFontIndirect(&lf);
oldfont = pDC->SelectObject(&font……
[/Quote]
good,如果能再说明如何送入和如何广播就更好了,谢谢
zyrr159487 2010-07-30
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 akirya 的回复:]
要获取系统字体?
[/Quote]
加载指定文件夹下的系统字体
zyrr159487 2010-07-30
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 visualeleven 的回复:]
引用楼主 zyrr159487 的回复:
就是普通的windows字体的载入,createfont什么的是可以,不过我这里有个问题,就是我要去指定的位置,比如桌面,载入它,所以问题来了,载入时并不知道它到底是什么字体。所以问题就是如何解析载入的windows字体

lz是要得到当前设置的字体?
[/Quote]
非也,小弟是想加载指定文件夹下的某种字体,可以确定是WINDOWS字体

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧