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

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

意义
0 斜体的
1 强调
2 阴性
3 大纲
4 罢工
5 大胆

otmfsType

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

otmsCharSlopeRise

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

otmsCharSlopeRun

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

otmItalicAngle

字体的主要斜体角度,从垂直方向逆时针以十分之几为单位。 常规(罗马)字体的值为零。 斜体字体通常具有负斜体角度(即向右倾斜)。

otmEMSquare

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

otmAscent

此字体中的最大距离字符扩展在基线上方。 这是字体的版式上升。

otmDescent

此字体中的最大距离字符将扩展到底线下方。 这是字体的版式下降。

otmLineGap

版式行距。

otmsCapEmHeight

不支持。

otmsXHeight

不支持。

otmrcFontBox

字体的边界框。

otmMacAscent

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

otmMacDescent

此字体中的最大距离字符扩展在 Macintosh 计算机的基线下方。

otmMacLineGap

Macintosh 计算机的行距信息。

otmusMinimumPPEM

此字体的最小建议大小,以像素为单位(每个 em-square)。

otmptSubscriptSize

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

otmptSubscriptOffset

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

otmptSuperscriptSize

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

otmptSuperscriptOffset

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

otmsStrikeoutSize

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

otmsStrikeoutPosition

相对于此字体的底线的罢工笔划的位置。 正值高于基线,负值如下所示。

otmsUnderscoreSize

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

otmsUnderscorePosition

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

otmpFamilyName

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

otmpFaceName

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

otmpStyleName

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

otmpFullName

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

言论

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

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

注意

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

要求

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

另请参阅

字体和文本结构

字体和文本概述

GetOutlineTextMetrics

LOGFONT

TEXTMETRIC