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+yyyy 的陣列中,而下四個字元的寬度則包含在位置 WIDTHTABLE+zzz 的陣列中。
如果裝置字型成正比且具有可變間距字元,WIDTHTABLE 結構的 WidthRun 陣列只包含一個 WIDTHRUN 元素,而 WIDTHTABLE+loCharWidthOffset 會指向字型中所有字元的字元寬度陣列。
針對 Western 裝置字型,IFIMETRICS 結構的 fwdAveCharWidth 成員用於判斷單一位元組字元寬度,如果未使用 WIDTHTABLE 結構指定字元寬度。
針對東亞裝置字型, FwdAveCharWidth 和 fwdMaxCharInc IFIMETRICS 結構的成員用於判斷單位元組和雙位元組字元寬度。 如果字型成正比,字型的 .ufm 檔案應該包含比例字元的 WIDTHTABLE 結構。
規格需求
需求 | 值 |
---|---|
標頭 | prntfont.h (包含 Prntfont.h) |