这是使用默认字体绘制一些文本的简单方法。
pDC->SelectObject(GetStockObject(DEFAULT_GUI_FONT));
pDC->SetTextColor(::GetSysColor(COLOR_WINDOWTEXT));
pDC->DrawText(text, -1, rc, DT_LEFT | DT_SINGLELINE | DT_NOPREFIX | DT_VCENTER | DT_END_ELLIPSIS);
Run Code Online (Sandbox Code Playgroud)
我怎样才能做完全相同的事情,但用粗体...相同的字体但粗体?可以在不创建自定义 CFont 对象的情况下完成吗?
CFont* pOldFont = pDC->GetCurrentFont();
LOGFONT logFont;
pOldFont->GetLogFont(&logFont);
logFont.lfWeight = FW_BOLD;
CFont newFont;
newFont.CreateFontIndirect(&logFont);
pDC->SelectObject(&newFont);
pDC->DrawText();
pDC->SelectObject(pOldFont);
Run Code Online (Sandbox Code Playgroud)