LOGFONT 和 CFont 区别

清泛原创

LOGFONT  和  CFont 本质上是相同的,前者是存储字体相关数据的一个结构体,后者是封装LOGFONT</a>的一个类,用于创建使用字体。


创建字体:
CFont *f = new CFont;
        f->CreateFont(13, // nHeight 
                                        0, // nWidth 
                                        0, // nEscapement 
                                        0, // nOrientation 
                                        400, // 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("宋体")); // lpszFac 
使用字体:
GetDlgItem(IDC_BTN_DEMO)->SetFont(f);

获取LOGFONT字体数据结构体:
LOGFONT lf;
f->GetLogFont(&lf);
这时就可以访问LOGFONT中的成员变量了,比如字体名:lf.lfFaceName等。


调用字体设置对话框:
CFontDialog dlg(&lf);
if(IDOK == dlg.DoModal())
{ ... }
 

LOGFONT CFont

分享到:
评论加载中,请稍后...
创APP如搭积木 - 创意无限,梦想即时!
回到顶部