GetTextExtentPointA 函数 (wingdi.h)

GetTextExtentPoint 函数计算指定文本字符串的宽度和高度。

注意 此函数仅用于与 16 位版本的 Windows 兼容。 应用程序应调用 GetTextExtentPoint32 函数,从而提供更准确的结果。
 

语法

BOOL GetTextExtentPointA(
  [in]  HDC    hdc,
  [in]  LPCSTR lpString,
  [in]  int    c,
  [out] LPSIZE lpsz
);

参数

[in] hdc

设备上下文的句柄。

[in] lpString

指向指定文本的字符串的指针。 该字符串不需要为零终止,因为 cbString 指定字符串的长度。

[in] c

lpString指向的字符串 长度。

[out] lpsz

指向 SIZE 结构的指针,该结构接收字符串的维度(以逻辑单元为单位)。

返回值

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

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

言论

GetTextExtentPoint 函数使用当前选定的字体来计算字符串的尺寸。 计算宽度和高度(以逻辑单位为单位)而不考虑任何剪裁。 此外,此函数假定文本为水平,即转义始终为 0。 这适用于文本的水平和垂直度量。 即使使用指定非零转义的字体,此函数也不会在计算文本范围时使用角度。 应用程序必须显式转换它。

由于某些设备 kern 字符,字符串中字符的范围之和可能不等于字符串的范围。

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

注意

wingdi.h 标头将 GetTextExtentPoint 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的 约定。

要求

要求 价值
最低支持的客户端 Windows 2000 Professional [仅限桌面应用]
支持的最低服务器 Windows 2000 Server [仅限桌面应用]
目标平台 窗户
标头 wingdi.h (包括 Windows.h)
Gdi32.lib
DLL Gdi32.dll

另请参阅

字体和文本功能

字体和文本概述

GetTextExtentPoint32

SIZE

SetTextCharacterExtra