描述
GetTextExtentExPointI函数检索指定字符串中适合指定空间的字符数,并使用每个字符的文本扩展名填充数组。(文本范围是空格开头和适合空格的字符之间的距离。)此信息对于文字包装计算非常有用。
C++ 语法
BOOL GetTextExtentExPointI( __in HDC hdc, __in LPWORD pgiIn, __in int cgi, __in int nMaxExtent, __out LPINT lpnFit, __out LPINT alpDx, __out LPSIZE lpSize ); |
PowerBASIC 语法
FUNCTION GetTextExtentExPointI ( _ BYVAL hdc AS DWORD, _ BYREF pgiIn AS WORD, _ BYVAL cgi AS LONG, _ BYVAL nMaxExtent AS LONG, _ BYREF lpnFit AS LONG, _ BYREF alpDx AS LONG, _ BYREF lpSize AS SIZE _ ) AS LONG |
参数
hdc
[in]处理设备上下文。
pgiIn
[in]指向要检索范围的字形索引数组的指针。
cgi
[in]指定pgiIn参数指向的数组中的字形数。
nMaxExtent
[in]指定格式化字符串的最大容许宽度(以逻辑为单位)。
lpnFit
[out]指向一个整数的指针,该整数接收到适合nMaxExtent参数指定空间的最大字符数的计数。当lpnFit参数为NULL时,nMaxExtent参数将被忽略。
alpDx
[out]指向接收部分字形扩展数组的整数数组的指针。阵列中的每个元素以逻辑单位给出符号指数数组的开头和符合nMaxExtent参数指定空间的字形之间的距离。尽管此数组应至少与CGI参数指定的字形索引的元素至少一样多,但该函数仅使用扩展区填充数组,只能由lpnFit参数指定的字形索引数量。如果lpnDx为NULL,则该函数不计算部分字符串宽度。
lpSize
[out]指向SIZE结构的指针,以逻辑单位接收字形索引数组的维度。此值不能为NULL。
返回值
如果函数成功,返回值不为零。
如果函数失败,返回值为零。
备注
如果lpnFit和lpnDx参数都为NULL,则调用GetTextExtentExPointI函数等效于调用GetTextExtentPointI函数。
当返回文本范围时,此函数假定文本是水平的,也就是说,擒纵机构始终为0。对于文本的水平和垂直测量都是如此。即使使用指定非零擒纵机构的字体,该函数也不会在计算文本范围时使用该角度。应用程序必须明确转换。
引用文件 #INCLUDE Once
WinGdi.inc(包括Windows.inc)