勇芳软件工作室.汉化:  Fonts and Text > Fonts and Text Functions >

GetTextExtentPointI

Previous pageReturn to chapter overviewNext page

描述

 

GetTextExtentPointI函数计算指定的字形索引数组的宽度和高度。

 

C++ 语法

 

BOOL GetTextExtentPointI(

__in  HDC hdc,

__in  LPWORD pgiIn,

__in  int cgi,

__out LPSIZE lpSize

);

 

PowerBASIC 语法

 

FUNCTION GetTextExtentPointI ( _

BYVAL hdc AS DWORD, _

BYREF pgiIn AS WORD, _

BYVAL cgi AS LONG, _

BYREF lpSize AS SIZE _

) AS LONG

 

参数

 

hdc

 

[in]处理设备上下文。

 

pgiIn

 

[in]指向字形数组数组的指针。

 

cgi

 

[in]指定字形索引数。

 

lpSize

 

[out]指向SIZE结构的指针,以逻辑单位接收字符串的维度。

 

返回值

 

如果函数成功,返回值不为零。

 

如果函数失败,返回值为零。

 

备注

 

GetTextExtentPointI函数使用当前选定的字体来计算字形索引数组的维数。在不考虑任何裁剪的情况下,以逻辑单位计算宽度和高度。

 

当返回文本范围时,此函数假定文本是水平的,也就是说,擒纵机构始终为0。对于文本的水平和垂直测量都是如此。即使使用指定非零擒纵机构的字体,该函数也不会在计算文本范围时使用该角度 - 应用程序必须明确转换它。

 

因为某些设备的汉字字符,各个字形索引的范围之和可能不等于整个字形索引数组的范围。

 

计算的字符串宽度考虑了由SetTextCharacterExtra函数设置的字符间距。

 

引用文件 #INCLUDE Once

 

WinGdi.inc(包括Windows.inc)