特殊说明:版权归个人所有,请勿转载,谢谢合作。
字体在使用之前也要像画笔和画刷一样需要创建,他们的创建步骤也基本相同,不一样的是字体比它们设置更为复杂一些。字体创建过程分为五个步骤:
(1)创建字体,通过调用CreateFont函数来创建;
(2)选入字体,通过调用SelectObject 函数来选入;
(3)绘画文字,通过调用TextOut或DrawText函数来绘制;
(4)选出字体,通过调用SelectObject函数来选出;
(5)删除字体,通过调用DeleteObject函数来删除。
【例6-1】字体的使用方法示例如下:
// 图形绘制事件 case WM_PAINT: hdc = BeginPaint(hWnd, &ps); { HFONT hFont, hOldFont; TextOut(hdc,10,10, "字体使用前", strlen("字体使用前")); hFont = CreateFont(20, 0, 0, 0, FW_HEAVY, 0, 0, 0, GB2312_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH | FF_DONTCARE, "粗体字"); hOldFont = (HFONT)SelectObject(hdc, hFont); TextOut(hdc,10,50, "字体使用后", strlen("字体使用后")); SelectObject(hdc, hOldFont); DeleteObject(hFont); } EndPaint(hWnd, &ps); break;
示例中,打印了文字“字体使用前”与“字体使用后”,来对字体使用前后的区分。如果使用CreateFontIndirect函数来创建字体也是可以的,创建步骤相同,只是在第一步之前,要对LOGFONT结构体初始化。到现在为止,包括示例,只创建了一种字体,对于大家经常使用的word处理软件,可想而知,它需要创建多少种字体供大家使用。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。