IDWriteFontFace1::GetKerningPairAdjustments 方法 (dwrite_1.h)
從字型的 kern 數據表擷取 kerning 字組調整。
語法
HRESULT GetKerningPairAdjustments(
UINT32 glyphCount,
[in] UINT16 const *glyphIndices,
[out] INT32 *glyphAdvanceAdjustments
);
參數
glyphCount
類型: UINT32
要擷取調整的字元數目。
[in] glyphIndices
類型: const UINT16*
要擷取調整的字元標識碼數位。
[out] glyphAdvanceAdjustments
類型: INT32*
每個圖像的字型設計單位所傳回的進階。 最後一個圖像調整為零。
傳回值
類型: HRESULT
如果此方法成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。
備註
GetKerningPairAdjustments 不是直接取代 GDI 字元型 GetKerningPairs,但它會提供相同的角色,而不需要用戶端在本機快取它們。 GetKerningPairAdjustments 也會直接使用字元標識符,而不是 UCS-2 字元 (kern 數據表實際儲存它們的方式) ,以避免字元折疊和模棱兩可,例如虛線和連字元,或空格和非中斷空格。
較新的字型可能只有 GPOS Kerning,而不是舊版配對表格的 Kerning。 這類字型,例如 Gabriola,只會傳回 0 的調整。 GetKerningPairAdjustments 不會虛擬化這些 GPOS 專案,並將其扁平化成 Kerning 配對。
您可以呼叫 IDWriteFontFace1::HasKerningPairs 來判斷是否需要呼叫 GetKerningPairAdjustments 來實現效能優勢。 如果您先前呼叫 IDWriteFontFace1::HasKerningPairs 並傳回 FALSE,您可以避免呼叫 GetKerningPairAdjustments ,因為字型沒有 kerning 配對數據表專案。 也就是說,在此情況下, 呼叫 GetKerningPairAdjustments 會是無作業。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 適用於 Windows 7 的 Windows 8 和平臺更新 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | 適用於 Windows Server 2008 R2 的 Windows Server 2012 和平臺更新 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | dwrite_1.h |
程式庫 | Dwrite_1.lib |
Dll | Dwrite_1.dll |