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。 这适用于文本的水平和垂直度量。 即使使用指定非零转义的字体,此函数也不会在计算文本范围时使用角度。 应用程序必须显式转换它。

由于某些设备包含字符,因此字符串中字符范围的总和可能不等于字符串的范围。

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

注意

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

要求

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

另请参阅

字体和文本函数

字体和文本概述

GetTextExtentPoint32

SIZE

SetTextCharacterExtra