CString strOut[4]; //字义输出的文字
strOut[0] = "1.使用函数 CreatePointFont()创建宋体字";
strOut[1] = "2.使用函数 CreateFontIndirect()创建倾斜、带下划线的黑体字";
strOut[2] = "3.使用函数 CreateFont()创建带删除线的大号字体";
strOut[3] = "4.使用库存字体对象创建 ANSI标准的等宽字体";
//创建两个字体对象
CFont *OldFont, NewFont;
LOGFONT MyFont = {
30,
10,
0,
0,
0,
1,
1,
0,
ANSI_CHARSET,
OUT_DEFAULT_PRECIS,
CLIP_DEFAULT_PRECIS,
DEFAULT_QUALITY,
DEFAULT_PITCH,
"黑体"
};
pDC->TextOut(0, 10, "创建字体的几种方法: ");
//显示几种不同效果的字体
for(int i = 0;i < 4;i++)
{
switch(i)
{
case 0:
//使用函数 CreatePointFont()创建字体
NewFont.CreatePointFont(200, "宋体", NULL);
break;
case 1:
//使用函数 CreateFontIndirect()创建字体
NewFont.CreateFontIndirect(&MyFont);
break;
case 2:
NewFont.CreateFont(30, 10, 0, 0, FW_HEAVY, FALSE, FALSE, TRUE,
ANSI_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS,
DEFAULT_QUALITY, DEFAULT_PITCH | FF_DONTCARE, "大号字");
break;
case 3:
//使用库存字体对象创建字体
pDC->SelectStockObject(ANSI_FIXED_FONT);
break;
default:
break;
}
OldFont = pDC->SelectObject(&NewFont);
pDC->TextOut(0, 60 * (i+1), strOut[i]);
pDC->SelectObject(OldFont);
NewFont.DeleteObject();
}