共用方式為


FD_DEVICEMETRICS 結構 (winddi.h)

如果驅動程式提供的DrvQueryFontData函式的iMode參數QFD_MAXEXTENTS,FD_DEVICEMETRICS 結構可用來提供裝置特定的字型資訊給 GDI。

語法

typedef struct _FD_DEVICEMETRICS {
  FLONG    flRealizedType;
  POINTE   pteBase;
  POINTE   pteSide;
  LONG     lD;
  FIX      fxMaxAscender;
  FIX      fxMaxDescender;
  POINTL   ptlUnderline1;
  POINTL   ptlStrikeOut;
  POINTL   ptlULThickness;
  POINTL   ptlSOThickness;
  ULONG    cxMax;
  ULONG    cyMax;
  ULONG    cjGlyphMax;
  FD_XFORM fdxQuantized;
  LONG     lNonLinearExtLeading;
  LONG     lNonLinearIntLeading;
  LONG     lNonLinearMaxCharWidth;
  LONG     lNonLinearAvgCharWidth;
  LONG     lMinA;
  LONG     lMinC;
  LONG     lMinD;
  LONG     alReserved[1];
} FD_DEVICEMETRICS, *PFD_DEVICEMETRICS;

成員

flRealizedType

這是一組快速鍵旗標。 此值可以是下列值的組合:

FDM_TYPE_BM_SIDE_CONST

水準和垂直寫入的快速鍵。 如果設定此旗標,則字型會為所有點陣圖具有常數高度。 在水準案例中,這表示 cy 維度是常數;在垂直案例中,這表示 cx 維度是常數。 此加速器不會用於大綱。

FDM_TYPE_CHAR_INC_EQUAL_BM_BASE

水準和垂直寫入的快速鍵。 在水準案例中,如果設定此旗標,則每個圖像的進階寬度等於圖像點陣圖的 cx 維度;在垂直案例中,如果設定此旗標,則每個圖像的進階寬度等於圖像點陣圖的 cy 維度。 此加速器不會用於大綱。

FDM_TYPE_CONST_BEARINGS

如果設定,則所有字元的 a 和 c 間距都是常數。

FDM_TYPE_MAXEXT_EQUAL_BM_SIDE

只有在同時設定FDM_TYPE_BM_SIDE_CONST時,才能設定此旗標。 如果設定,則字型高度 (如上方針對水準和垂直寫入) 所定義,等於最大遞增和最大遞減的總和。 此加速器不會用於大綱。

FDM_TYPE_ZERO_BEARINGS

如果設定,則所有字元的 a 和 c 間距都是零。

pteBase

指定 POINTE 結構,此結構包含字型基準上的指標空間單位向量,並轉換成裝置空間,然後正規化。 如需詳細資訊,請參閱 GDI 資料類型中的 POINTE。

pteSide

指定 POINTE 結構,其包含垂直于字型基準的指標空間單位向量,其方向為遞增,轉換成裝置空間,然後正規化。 在一般空間中,基準和遞增方向必須是正交方向,但在裝置空間中, pteBasepteSide 不一定要是正交,視 Notional 到裝置空間轉換而定。

lD

如果字型是固定間距 (單空格) 字型,則指定進階寬度。 如果字型是可變音調字型,則此成員應設定為零。

fxMaxAscender

指定這個字型實例的提示最大遞增高度,這個字型實例會沿著 pteSide測量。 請參閱 GDI 資料類型中的 FIX 資料類型。

fxMaxDescender

指定這個字型實例的提示下階高度上限,此字型實例會沿著 pteSide測量。 請參閱 GDI 資料類型中的 FIX 資料類型。

ptlUnderline1

指定 POINTL 結構,其中包含這個字型實例相對於字元來源的提示底線位置。

ptlStrikeOut

指定 POINTL 結構,其中包含這個字型實例的提示刪除線位置,相對於字元的字元原點。

ptlULThickness

指定 POINTL 結構,其中包含這個字型實例的提示底線粗細。 這個向量會定義用來繪製底線的矩形側邊。 基底是由基準隱含定義。

ptlSOThickness

指定 POINTL 結構,其中包含這個字型實例的提示刪除線粗細。 這個向量會定義用來繪製刪除線的矩形側邊。 基底是由基準隱含定義。

cxMax

指定這個字型實例的提示最大圖像點陣圖寬度,以圖元為單位。 不適用於大綱。

cyMax

指定這個字型實例的提示最大圖像點陣圖高度,以圖元為單位。 不適用於大綱。

cjGlyphMax

指定這個字型實例的提示字元大小上限,以位元組為單位。 此值是儲存任何字型字元所需的 GLYPHBITS 結構大小上限。

fdxQuantized

指定 FD_XFORM 結構。 字型驅動程式會填入實際用於字型實現的字型轉換。 這可能與 GDI 所要求的轉換不同,如 FONTOBJ_pxoGetXform所定義。

lNonLinearExtLeading

這是 28.4 裝置單位中的非線性外部前置。

lNonLinearIntLeading

這是 28.4 個裝置單位中的非線性內部前置。

lNonLinearMaxCharWidth

這是以 28.4 個裝置單位為單位的非線性最大字元增量。

lNonLinearAvgCharWidth

這是 28.4 個裝置單位中的非線性平均字元寬度。

lMinA

這是這個字型實現的最大負數 A 空格,指定為絕對值。

lMinC

這是這個字型實現的最大負數 C 空間,指定為絕對值。

lMinD

這是這個字型實現的最小非零字元寬度。

alReserved[1]

是保留的,而且應該由字型提供者忽略。

規格需求

   
標頭 winddi.h (包括 Winddi.h)

另請參閱

DrvQueryFontData

FD_XFORM

FONTOBJ_pxoGetXform

GLYPHBITS