📄 untitled-28.txt
字号:
第2章在窗口中绘图57
表2.9 CDC文本函数
函数说明
nrawnxt在格式化矩形中显示文本
TeXtollt在当前或指定位置输出一行文本
TabbedTextout输出一行含有制表符的文本
EXffeXtollt输出一行文本,并有选择地给矩形填充背景色或改变字符间距
*e门上XtEXtent计算当前字体下一个字符串的宽度
GetTabbedTextExtent计算当前字体下含有制表符字符串的宽度
GetTeXtMetriCS返回当前字体的字体度量(字符高度、字符平均宽度等)
SetTextAlign给Textout和其他输出函数设定对齐参数
SetTexdustification确定对齐一串文本时需要增加的宽度
SetTextColor设定设备描述表的文本输出颜色
SetBkColor设定设备描述表的背景色,即确定输出字符背后的填充色
借助GetTextMetrics和GetTextExtent这两个函数可以获得当前选人设备描述表的字体信
息。GetTextMetrics传给TEXTMETRIC结构关于形成某种字体的字符的信息。GetTextExtent
返回指定字符串在该字体下生成的宽度,以逻辑单位表示。(如果字符串含有制表符,则调
用GetTahbedTextExtent)GetTextExtent的一个作用是:在输出字符串之前,测量字符串的宽
度。这样可以计算出对齐文本时单词间允许的间距。如果"width是指左、右页边间的距
离,则下面的程序代码输出“Now is the time”,并使输出与左、右边距对齐。
CStrlng sir。ng一一T(”Now Is the t。。e”);
CSize st。e= dc.GetTextExtent(string);
dc.SetTextjust。float。on(nw。dth- s。ie.ex, 3);
dc.Textout(0, v, strino);
传递给SetTexdustification的第二个参数指定了字符串中断开符的数目。默认的断开符
是空格符。SetTexilustification被调用之后,对Textout和有关文本输出函数的调用则会将由
SetTexdustification第一个参数定义的空白均匀分配在所有断开符之间。
2. 2. 6 GDI字体和 CFont类
所有的CDC文本函数都使用当前选人设备描述表的字体。字体是指一组具有特定尺
寸(高度)和字样的字符;字样是指字符共有的属性,如字的粗细度——正常体或黑体。在传
统印刷式样中,字体尺寸大小是以point(即点)为单位来度量的。一个点相当于1/72英寸。
12一点字体中的字符就有回/6英寸高。但是在Windows中,针对输出设备的具体特性,字符的
实际高度也稍有不同。 typeface项描述了字体的基本样式。 Times New Roman是一种字样;
。。uner New是另一种。
与画笔或画刷一样,字体也是一个GDI对象。在MFC中,字体由CFont类的对象表示。
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -