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 结构的 fwdAveCharWidth 和 fwdMaxCharInc 成员用于确定单字节和双字节字符宽度。 如果字体是成比例的,则字体的 .ufm 文件应包含比例字形的 WIDTHTABLE 结构。
要求
要求 | 值 |
---|---|
Header | prntfont.h (包括 Prntfont.h) |