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 At offset xxx: 56, 50, 60 (WORD 大小的)

偏移 yyy: 54, 60

偏移 zzz:54、60、43、40

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

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

对于西方设备字体,如果未使用 WIDTHTABLE 结构指定字符宽度,则 IFIMETRICS 结构的 fwdAveCharWidth 成员用于确定单字节字符宽度。

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

要求

要求
Header prntfont.h (包括 Prntfont.h)

另请参阅

IFIMETRICS

WIDTHTABLE