FONTDIFF 结构 (winddi.h)

FONTDIFF 结构描述了基本字体及其模拟之一之间的所有不同特征。

语法

typedef struct _FONTDIFF {
  BYTE   jReserved1;
  BYTE   jReserved2;
  BYTE   jReserved3;
  BYTE   bWeight;
  USHORT usWinWeight;
  FSHORT fsSelection;
  FWORD  fwdAveCharWidth;
  FWORD  fwdMaxCharInc;
  POINTL ptlCaret;
} FONTDIFF;

成员

jReserved1

jReserved2

jReserved3

保留供系统使用。

bWeight

指定 Panose 权重。

usWinWeight

指定 0 到 1000 范围内的字体粗细 (例如,400 表示正常,700 为粗体) 。 此值在 Win32 LOGFONT 结构的 lfWeight 成员中提供给应用程序。

fsSelection

指定以下标志的组合:

含义
FM_SEL_BOLD 如果字体的字符为粗体,则设置 。
FM_SEL_ITALIC 如果字体的字符为斜体,则设置 。
FM_SEL_NEGATIVE 如果字体的字符的前景和背景相反,则设置 。
FM_SEL_OUTLINED 如果字体的字符为空心,则设置 。
FM_SEL_REGULAR 如果字体的字符为正常粗细,则设置 。
FM_SEL_STRIKEOUT 如果默认删除字体的字符,则设置 ;否则,必须模拟删除。
FM_SEL_UNDERSCORE 如果字体的所有字符默认下划线,则设置 ;否则,必须模拟强调。

fwdAveCharWidth

指定所有 26 个小写字母“a”到拉丁字母“z”和空格字符的宽度的算术平均值。 如果没有 26 个小写字母中的任何一个,则应将此成员设置为等于字体中所有字形的加权平均值。

fwdMaxCharInc

指定字体中所有字形的最大字符增量。

ptlCaret

指定 POINTL 结构,该结构指示字体的升序方向。 例如,非字母化拉丁字体的值 (0,1) 而斜体拉丁字体可能将值指定为 (2,5) 。

注解

如果字体已被放大,则剩下的唯一可能的模拟是斜体,从而生成粗体斜体模拟。 同样,斜体字体只能大胆,也会产生粗体斜体模拟。

有关 FSHORT 和 FWORD 数据类型的说明,请参阅 GDI 数据类型

要求

要求
Header winddi.h (包括 Winddi.h)

另请参阅

FONTSIM