OUTLINETEXTMETRICA 结构 (wingdi.h)

OUTLINETEXTMETRIC 结构包含描述 TrueType 字体的指标。

语法

typedef struct _OUTLINETEXTMETRICA {
  UINT        otmSize;
  TEXTMETRICA otmTextMetrics;
  BYTE        otmFiller;
  PANOSE      otmPanoseNumber;
  UINT        otmfsSelection;
  UINT        otmfsType;
  int         otmsCharSlopeRise;
  int         otmsCharSlopeRun;
  int         otmItalicAngle;
  UINT        otmEMSquare;
  int         otmAscent;
  int         otmDescent;
  UINT        otmLineGap;
  UINT        otmsCapEmHeight;
  UINT        otmsXHeight;
  RECT        otmrcFontBox;
  int         otmMacAscent;
  int         otmMacDescent;
  UINT        otmMacLineGap;
  UINT        otmusMinimumPPEM;
  POINT       otmptSubscriptSize;
  POINT       otmptSubscriptOffset;
  POINT       otmptSuperscriptSize;
  POINT       otmptSuperscriptOffset;
  UINT        otmsStrikeoutSize;
  int         otmsStrikeoutPosition;
  int         otmsUnderscoreSize;
  int         otmsUnderscorePosition;
  PSTR        otmpFamilyName;
  PSTR        otmpFaceName;
  PSTR        otmpStyleName;
  PSTR        otmpFullName;
} OUTLINETEXTMETRICA, *POUTLINETEXTMETRICA, *NPOUTLINETEXTMETRICA, *LPOUTLINETEXTMETRICA;

成员

otmSize

OUTLINETEXTMETRIC 结构的大小(以字节为单位)。

otmTextMetrics

包含有关字体的详细信息的 TEXTMETRIC 结构。

otmFiller

一个值,该值使结构按字节对齐。

otmPanoseNumber

此字体的 PANOSE 编号。

otmfsSelection

字体模式的性质。 此成员可以是以下位的组合。

bit 含义
0 斜体
1 下划线
2 负数
3 轮廓
4 删除线
5 加粗

otmfsType

指示字体是否获得许可。 不得修改或交换许可字体。 如果设置了第 1 位,则字体可能不会嵌入到文档中。 如果第 1 位被清除,则可以嵌入字体。 如果设置了第 2 位,则嵌入为只读。

otmsCharSlopeRise

光标的斜率。 如果斜率是垂直的,则此值为 1。 应用程序可以使用此值和 otmsCharSlopeRun 成员的值来创建与 otmItalicAngle 成员) 指定的main斜角 (相同的斜率游标。

otmsCharSlopeRun

光标的斜率。 如果斜率是垂直的,则此值为零。 应用程序可以使用此值和 otmsCharSlopeRise 成员的值来创建与 otmItalicAngle 成员) 指定的main斜角 (相同的斜率游标。

otmItalicAngle

字体main倾斜角度,以十分之一度的垂直逆时针角度表示。 常规 (罗马) 字体的值为零。 斜体字体通常具有负斜体角度 (也就是说,它们倾向于右) 。

otmEMSquare

定义此字体的 x 维或 y 维的逻辑单元数。 (对于 em square.) ,x 方向和 y 方向的单位数始终相同

otmAscent

此字体中的最大距离字符超出底线。 这是字体的版式上升。

otmDescent

此字体中的最大距离字符延伸至底线下方。 这是字体的版式下降。

otmLineGap

版式行距。

otmsCapEmHeight

不支持。

otmsXHeight

不支持。

otmrcFontBox

字体的边界框。

otmMacAscent

此字体中的最大距离字符超出 Macintosh 计算机的基线。

otmMacDescent

此字体中的最大距离字符延伸至 Macintosh 计算机的基线下方。

otmMacLineGap

Macintosh 计算机的行距信息。

otmusMinimumPPEM

此字体的最小建议大小,以每平方像素为单位。

otmptSubscriptSize

此字体中下标的建议水平和垂直大小。

otmptSubscriptOffset

此字体中下标的建议水平和垂直偏移量。 下标偏移量从字符原点到下标字符的原点。

otmptSuperscriptSize

此字体中上标的建议水平和垂直大小。

otmptSuperscriptOffset

此字体中上标的建议水平和垂直偏移量。 上标偏移量从上标字符的基线到上标字符的基线。

otmsStrikeoutSize

此字体的删除线笔划的宽度。 通常,这是字体的 em 短划线的宽度。

otmsStrikeoutPosition

删除线笔划相对于此字体的底线的位置。 正值高于基准线,负值低于。

otmsUnderscoreSize

此字体的下划线字符的粗细。

otmsUnderscorePosition

此字体的下划线字符的位置。

otmpFamilyName

从结构开头到指定字体系列名称的字符串的偏移量。

otmpFaceName

从结构开头到指定字体字样名称的字符串的偏移量。 (此字体名称对应于 LOGFONT 结构中指定的名称。)

otmpStyleName

从结构开头到指定字体样式名称的字符串的偏移量。

otmpFullName

从结构开头到指定字体全名的字符串的偏移量。 此名称对于字体是唯一的,通常包含版本号或其他标识信息。

注解

OUTLINETEXTMETRIC 中返回的大小以逻辑单元指定;也就是说,它们依赖于指定显示上下文的当前映射模式。

请注意, OUTLINETEXTMETRIC 是使用当前包设置定义的。 为避免问题,请确保使用平台默认打包生成应用程序。 例如,32 位 Windows 使用默认值 8 字节打包。 有关详细信息,请参阅 MSDN 主题“C 编译器打包问题”。

注意

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

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
标头 wingdi.h (包括 Windows.h)

另请参阅

字体和文本结构

字体和文本概述

GetOutlineTextMetrics

LOGFONT

TEXTMETRIC