共用方式為


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

另請參閱

IDWriteTextAnalyzer