WIDTHRUN 结构 (prntfont.h)

WIDTHRUN 结构用于定义 Unidrv 字体指标文件(.ufm 文件)的内容。

语法

typedef struct _WIDTHRUN {
  WORD  wStartGlyph;
  WORD  wGlyphCount;
  DWORD loCharWidthOffset;
} WIDTHRUN, *PWIDTHRUN;

成员

wStartGlyph

指示宽度运行的第一个字形的索引值。

wGlyphCount

指定宽度运行表示的字形数。

loCharWidthOffset

指定从 WIDTHTABLE 结构的开头到包含宽度运行中包含的字形集的位置的偏移量。

言论

宽度运行描述一组相邻字形的宽度。 宽度运行集由 WIDTHRUN 元素数组描述。 该数组包含在 WIDTHTABLE 结构中。

dwStartGlyph 中包含的索引值是整数,从 1 开始,字体中的每个字形都有索引。 也就是说,为字体中的第一个字形分配索引值为 1,下一个字形的索引为 2,依此等。

例如,假设 WIDTHRUN 数组的前三个元素包含以下值:

wStartGlyphwGlyphCountIoCharWidthOffset=xxx

wStartGlyphwGlyphCountIoCharWidthOffset=yyy

wStartGlyphwGlyphCountIoCharWidthOffsetzzz 偏移量 xxx:56、50、60 (WORD 大小)

偏移量 yyy: 54, 60

偏移量 zzz:54、60、43、40

在此示例中,字体的前三个字形的宽度包含在位置 WIDTHTABLE+xxx的数组中,接下来两个字形的宽度包含在位置 WIDTHTABLE+yyy的数组中,接下来四个字形的宽度包含在位置 WIDTHTABLE+zzz的数组中。

如果设备字体成正比且具有可变音调字符,则 WIDTHTABLE 结构的 WidthRun 数组仅包含一个 WIDTHRUN 元素,而 WIDTHTABLE+loCharWidthOffset 指向字体中所有字符的字符宽度数组。

对于 Western 设备字体,fwdAveCharWidthIFIMETRICS 结构的成员用于确定单字节字符宽度(如果未使用 WIDTHTABLE 结构指定字符宽度)。

对于东亚设备字体,fwdAveCharWidthfwdMaxCharInc IFIMETRICS 结构的成员用于确定单字节和双字节字符宽度。 如果字体成正比,则字体的 .ufm 文件应包含比例字形的 WIDTHTABLE 结构。

要求

要求 价值
标头 prntfont.h (包括 Prntfont.h)

另请参阅

IFIMETRICS

WIDTHTABLE