次の方法で共有


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*

グリフとその位置に適用される省略可能な変換。 この変換は、フォント サイズと pixelsPerDip で指定されたスケーリングの後に適用されます。

useGdiNatural

種類: BOOL

FALSE に設定すると、メトリックは GDI エイリアステキストのメトリックと同じです。 TRUE に設定すると、メトリックは、CLEARTYPE_NATURAL_QUALITYで作成されたフォントを使用して GDI によって測定されるテキストのメトリックと同じです。

isSideways

種類: BOOL

テキストを垂直方向に描画する場合は、ブール値フラグを TRUE に設定します。

isRightToLeft

種類: BOOL

右から左へのテキストの場合、ブール型のフラグを TRUE に設定します。

[in] scriptAnalysis

型: const DWRITE_SCRIPT_ANALYSIS*

AnalyzeScript 呼び出しからのスクリプト分析結果へのポインター。

[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
Library Dwrite.lib
[DLL] Dwrite.dll

こちらもご覧ください

IDWriteTextAnalyzer