IDWriteTextAnalyzer::GetGdiCompatibleGlyphPlacements 方法 (dwrite.h)
根據字型和寫入系統的轉譯規則,從 GetGlyphs 方法放置圖像輸出。
語法
HRESULT GetGdiCompatibleGlyphPlacements(
[in] WCHAR const *textString,
[in] UINT16 const *clusterMap,
[in] DWRITE_SHAPING_TEXT_PROPERTIES *textProps,
UINT32 textLength,
[in] UINT16 const *glyphIndices,
[in] DWRITE_SHAPING_GLYPH_PROPERTIES const *glyphProps,
UINT32 glyphCount,
[in] IDWriteFontFace *fontFace,
FLOAT fontEmSize,
FLOAT pixelsPerDip,
[in, optional] DWRITE_MATRIX const *transform,
BOOL useGdiNatural,
BOOL isSideways,
BOOL isRightToLeft,
[in] DWRITE_SCRIPT_ANALYSIS const *scriptAnalysis,
[in, optional] WCHAR const *localeName,
[in, optional] DWRITE_TYPOGRAPHIC_FEATURES const **features,
[in, optional] UINT32 const *featureRangeLengths,
UINT32 featureRanges,
[out] FLOAT *glyphAdvances,
[out] DWRITE_GLYPH_OFFSET *glyphOffsets
);
參數
[in] textString
類型: const WCHAR*
字元陣列,包含字元的來源原始字串。
[in] clusterMap
類型: const UINT16*
從字元範圍到字元範圍的對應指標。 GetGlyphs 會傳回此專案。
[in] textProps
類型: DWRITE_SHAPING_TEXT_PROPERTIES*
結構陣列的指標,其中包含每個字元的成形屬性。 GetGlyphs 會傳回這個結構。
textLength
類型: UINT32
textString 的文字長度。
[in] glyphIndices
類型: const UINT16*
GetGlyphs 傳回的字元索引數位。
[in] glyphProps
類型: const DWRITE_SHAPING_GLYPH_PROPERTIES*
結構的陣列指標,其中包含 GetGlyphs 所傳回之每個圖像的成形屬性。
glyphCount
類型: UINT32
從 GetGlyphs 傳回的字元數。
[in] fontFace
類型: IDWriteFontFace*
字型臉部的指標,其為輸出圖像的來源。
fontEmSize
類型: FLOAT
以 DIP 為單位的邏輯字型大小。
pixelsPerDip
類型: FLOAT
每個 DIP 的實體像素數目。
[in, optional] transform
類型: const DWRITE_MATRIX*
套用至字元及其位置的選擇性轉換。 此轉換會在字型大小和 pixelPerDip所指定的縮放比例之後套用。
useGdiNatural
類型: BOOL
當設定為 FALSE 時,計量會與 GDI 別名文字的計量相同。 當設定為 TRUE時,計量會與 GDI 使用以 CLEARTYPE_NATURAL_QUALITY 建立的字型來測量的文字計量相同。
isSideways
類型: BOOL
如果文字是要垂直繪製,則布爾值旗標會設定為 TRUE 。
isRightToLeft
類型: BOOL
從右至左文字的布爾值旗標設定為 TRUE 。
[in] scriptAnalysis
類型: const DWRITE_SCRIPT_ANALYSIS*
AnalysisScript 呼叫中腳本分析結果的指標。
[in, optional] localeName
類型: const WCHAR*
字元陣列,包含選取字元時要使用的地區設定。 例如,相同的字元可能會對應至 ja-jp 與 zh-chs 的不同字元。 如果這是 NULL,則會使用以腳本為基礎的預設對應。
[in, optional] features
類型: const DWRITE_TYPOGRAPHIC_FEATURES**
要用於每個特徵範圍之印刷樣式特徵集的指標數位。
[in, optional] featureRangeLengths
類型: const UINT32*
每個特徵範圍的長度,以字元為單位。
所有長度的總和應該等於 textLength。
featureRanges
類型: UINT32
功能範圍的數目。
[out] glyphAdvances
類型: FLOAT*
當這個方法傳回時,會包含每個圖像的進階寬度。
[out] glyphOffsets
類型: DWRITE_GLYPH_OFFSET*
當這個方法傳回時,會包含每個圖像原點的位移。
傳回值
類型: HRESULT
如果此方法成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。
規格需求
需求 | 值 |
---|---|
目標平台 | Windows |
標頭 | dwrite.h |
程式庫 | Dwrite.lib |
Dll | Dwrite.dll |