1. 首页
  2. 移动开发
  3. 其他
  4. 文字和字体-信息系统管理师-一本通

文字和字体-信息系统管理师-一本通

上传者: 2024-07-12 23:55:22上传 PDF文件 12.43MB 热度 10次

第十七章 文字和字体

显示文字是本书所要解决的首要问题,现在我们来研究Microsoft Windows中各种有效字体和字体大小的使用方法以及调整文字的方式。

Windows 3.1发表的TrueType使程序写作者和使用者以灵活的方式处理文字的能力大幅增强。TrueType是轮廓字体技术,由Apple Computer公司和Microsoft公司开发,并被许多字体制造商支持。由于TrueType字体能够连续缩放,并能应用于视讯显示器和打印机,现在能够在Windows下实作真的WYSIWYG(what you see is what you get:所见即所得)。TrueType也便于制作“奇妙”字体,例如旋转的字母、内部填充图案的字母或将它们用于剪裁区域,在本章我将展示它们。

简单的文字输出

让我们先来看看Windows为文字输出、影响文字的设备内容属性以及备用字体提供的各种函数。

文字输出函数

我已经在许多范例程序中使用过最常用的文字输出函数:

TextOut (hdc, xStart, yStart, pString, iCount);

参数xStart和yStart是逻辑坐标上字符串的起始点。通常,这是Windows开始绘制的第一个字母的左上角。TextOut需要指向字符串的指针和字符串的长度,这个函数不能识别以NULL终止的字符串。

TextOut函数的xStart和yStart参数的含义可由SetTextAlign函数改变。TA_LEFT、TA_RIGHT和TA_CENTER旗标影响使用xStart在水平方向上定位字符串的方式。默认值是TA_LEFT。如果在SetTextAlign函数中指定了TA_RIGHT,则后面的TextOut呼叫会将字符串的最后一个字符定位于xStart,如果指定了TA_CENTER,则字符串的中心位于xStart。类似地,TA_TOP、TA_BOTTOM和TA_BASELINE旗标影响字符串的垂直位置。TA_TOP是默认值,它意味着字符串的字母顶端位于yStart,使用TA_BOTTOM意味着字符串位于yStart之上。可以使用TA_BASELINE定位字符串,使基准线位于yStart。基准线是如小写字母p、q、y等字母下部的线。

如果您使用TA_UPDATECP旗标呼叫SetTextAlign,Windows就会忽略TextOut的xStart和yStart参数,而使用由MoveToEx、LineTo或更改目前位置的另一个函数设定的位置。TA_UPDATECP旗标也使TextOut函数将目前位置更新为字符串的结尾(TA_LEFT)或字

用户评论