6.3 字体的应用

特殊说明:版权归个人所有,请勿转载,谢谢合作。

字体在使用之前也要像画笔和画刷一样需要创建,他们的创建步骤也基本相同,不一样的是字体比它们设置更为复杂一些。字体创建过程分为五个步骤:

(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处理软件,可想而知,它需要创建多少种字体供大家使用。

 

 

转载请附上原文出处链接及本声明
李老师的博客 » 6.3 字体的应用

发表评论

提供最优质的文章集合

立即查看 了解详情