这是用于计算普通文本宽度的示例代码(粗体显示为out)。 - 现在我想计算粗体文字宽度。 我正在使用“Intermediatery bank:”作为粗体文字
任何人都可以帮忙......请
int CPrintableInvoice::GetFormattedStringWidth(const CString& txt)
{
if (txt.IsEmpty())
return 0;
CFont *pOldF, *pF = GetFont();
CClientDC dc(this);
pOldF = dc.SelectObject(pF);
CRect r;
dc.DrawText(txt, &r, DT_SINGLELINE|DT_CALCRECT);
int wid = r.Width();
dc.SelectObject(pOldF);
return wid;
}
先谢谢..
谢谢, Hareesh。
答案 0 :(得分:0)
请尝试使用GetTextExtent()。它将如下:
CFont *pOldF, *pF = GetFont();
CClientDC dc(this);
pOldF = dc.SelectObject(pF);
CSize size = dc.GetTextExtent();
return size.cx;