有没有办法在CStatic标签中设置Letter Spacing?
那么"TEST"
看起来像"T E S T"
?
我通过使用LOGFONT及其参数的SetFont()方法尝试了它:
LOGFONT lf;
memset(&lf, 0, sizeof(lf));
lf.lfHeight = -24;
lf.lfWidth = -17;
lf.lfWeight = FW_THIN;
lf.lfOutPrecision = OUT_TT_ONLY_PRECIS;
lf.lfQuality = ANTIALIASED_QUALITY;
wcscpy_s(lf.lfFaceName, m_mainFont.GetFontFamilyName().c_str());
CFont font;
font.CreateFontIndirectW(&lf);
m_staticCtl.SetFont(&font);
lfWidth参数似乎没有设置任何间距,它只是在宽度上拉伸字符。
是否有任何选项允许在CStatic Control或CFont中使用字母间距? 或者我可以以某种方式操纵继承的CStatic类中的绘图吗?
<小时/> 编辑:我说的是字母间距。 TEST只是一个例子......我希望这很清楚。我想要字符之间的特定字母间距(以像素为单位)(不是额外的空格字符。)
答案 0 :(得分:3)
这是你需要的吗?
“使用GDI调用SetTextCharacterExtra控制字符间距。另一个答案是使用ExtTextOut”.... http://social.msdn.microsoft.com/Forums/vstudio/en-US/538607f8-0d88-42f3-b6bc-f3008002b607/how-to-change-the-lineheight-and-letterspacing-value-when-drawing-text-in-gdiplus?forum=vcgeneral