今天由于所绘制的图形当中的中文字体太大了,所以想要将其变小,但是网上找的很多放多的放大都是要用到窗口类CWND,而在静态文本框中是没有和窗口相关联的函数的,因此这个方法显得不是很好。
其实,说白了的方法很简单,直接在重载函数中设置一个CFOnt字体的对象,利用对象的构造函数直接设置你想要的字体,然后直接将老的字体替换掉,那么你之后的所有绘制所需要的字体都均是你想要的字体!
CFont font;
font.CreateFont( 12, // nHeight
0, // nWidth
0, // nEscapement
0, // nOrientation
FW_NORMAL, // nWeight
FALSE, // bItalic
FALSE, // bUnderline
0, // cStrikeOut
ANSI_CHARSET, // nCharSet
OUT_DEFAULT_PRECIS, // nOutPrecision
CLIP_DEFAULT_PRECIS, // nClipPrecision
DEFAULT_QUALITY, // nQuality
DEFAULT_PITCH | FF_SWISS, // nPitchAndFamily
_T("宋体"));
MemDC.SelectObject(&font);如果你要还原的话,在之前设置的时候可以稍作修改。
CFont font,*oldpfont;
MemDC.SelectObject(&oldpfont);
MemDC.SelectObject(&font);
//这样便将老的字体保存
//你更换字体之后
//code
//准备换回原来的字体
MemDC.DeleteObject(&font);
oldfpnt->SelectObjec();
这样的话便可以方便的更换在你的绘图中需要用到的字大小了!
4308




被折叠的 条评论
为什么被折叠?



