急:wince 是不是不支持等宽字体啊?
在windows下我们可以通过
lgFont.lfPitchAndFamily = FF_MODERN|FIXED_PITCH;
将字体设置为等宽字体,但是在wince中上述语句编译通过,但是没有任何效果。屏幕上的字体根本就不是等宽字体。
代码如下:
LOGFONT lgFont;
CFont hFont, *pOldFont;
CPoint pt;
INT int nFontHeight = 8;
int nFontWidth = 16;
lgFont.lfHeight = nFontHeight;
lgFont.lfWidth = nFontWidth;
lgFont.lfEscapement = 0;
lgFont.lfOrientation = 0;
lgFont.lfWeight = 0;
lgFont.lfItalic = 0;
lgFont.lfUnderline = 0;
lgFont.lfStrikeOut = 0;
lgFont.lfCharSet = DEFAULT_CHARSET;
lgFont.lfOutPrecision = 0;
lgFont.lfClipPrecision = 0;
lgFont.lfQuality = 0;
lgFont.lfPitchAndFamily = FF_MODERN|FIXED_PITCH;
lgFont.lfFaceName[0] = 0;
if (hFont.CreateFontIndirect (&lgFont))
pDC->ExtTextOut(0, 100, 0, 0, _T("Success"), NULL);
else
pDC->ExtTextOut(0, 100, 0, 0, _T("Fail"), NULL);
pOldFont = pDC->SelectObject(&hFont);
pt = GetScrollPosition();
CString strLine = _T("A234567890B234567890C234567890D234567890E234567890F234567890G234567890H234567890");
pDC->ExtTextOut(-pt.x, 14, 0, 0, strLine, NULL);// 新建字体输出
pDC->SelectObject(pOldFont);
pDC->ExtTextOut(-pt.x, 40, 0, 0, strLine, NULL);//默认字体输出
for (int K=0; K<80; K++)
{
pDC->ExtTextOut(-pt.x + K*nFontWidth, 34+ nFontHeight + LINE_GAP, 0, 0, strLine[K], NULL); //逐个字符输出
}
wince 是不是不支持等宽字体啊?