关于网友提出的“ TabbedTextOut, 字符宽度”问题疑问,本网通过在网上对“ TabbedTextOut, 字符宽度”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题: TabbedTextOut, 字符宽度
描述: 在MFC的onpaint()函数体中:
CString a = _T("O");
CString b = _T("B");
int tab = 28;
int x=33;
int width=7;
pDC->TabbedTextOut(x, 30, a, a.GetLength(), 1, &tab, 33);
pDC->TabbedTextOut(x+width, 30, b, b.GetLength(), 1, &tab, 33);//
输出结果:OB , O的右半部分被B遮住了。
请教的问题:设想如果字体的宽度是7,像上述这样连续调用TabbedTextOut,字体会被覆盖吗?
如何设置字体的宽度为7,如何设置字体的大小和字体的类型?
如果会覆盖,如何设置合理的距离,使后续调用的TabbedTextOut不会覆盖之前的字符。
解决方案1: CDC有个函数SelectObject可以设置字体大小。。。
另外:TabbedTextOut参数是横坐标、纵坐标,,,可以调试看看需要多大间隔才能正常显示字体,width再调大点就可以了。
解决方案2: GetTextExtentPoint获取
以上介绍了“ TabbedTextOut, 字符宽度”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/2187859.html