IDWriteFontFace::GetGlyphRunOutline メソッド (dwrite.h)
アウトライン シンク インターフェイスを呼び出して、グリフの実行のアウトラインを計算します。
構文
HRESULT GetGlyphRunOutline(
FLOAT emSize,
[in] UINT16 const *glyphIndices,
[in, optional] FLOAT const *glyphAdvances,
[in, optional] DWRITE_GLYPH_OFFSET const *glyphOffsets,
UINT32 glyphCount,
BOOL isSideways,
BOOL isRightToLeft,
IDWriteGeometrySink *geometrySink
);
パラメーター
emSize
型: FLOAT
DIP 単位のフォントの論理サイズ。 DIP ("デバイスに依存しないピクセル") は 1/96 インチに相当します。
[in] glyphIndices
型: const UINT16*
グリフ インデックスの配列。 グリフは論理的な順序であり、進む方向 は isRightToLeft パラメーターに依存します。 配列を割り当て、 glyphCount で指定された要素の数を格納できる必要があります。
[in, optional] glyphAdvances
型: const FLOAT*
グリフの省略可能な配列は、DIP で進みます。 グリフの前進とは、グリフを描画した後の位置 (ベースラインの方向) を進める量です。 glyphAdvances には、glyphCount で指定された要素の数が含まれます。
[in, optional] glyphOffsets
型: const DWRITE_GLYPH_OFFSET*
グリフ オフセットの省略可能な配列。それぞれの配列は、現在のペン位置を基準にして、グリフのベースラインに対して垂直なオフセットとベースラインに沿ったオフセットを指定します。 glyphOffsets には、glyphCount で指定された要素の数が含まれます。
glyphCount
種類: UINT32
実行中のグリフの数。
isSideways
種類: BOOL
TRUE の場合、グリフのアセンダーはベースラインと共に実行されます。 FALSE の場合、グリフ アセンダーはベースラインに対して垂直に実行されます。 たとえば、垂直ベースラインの英語のアルファベットは isSideways を FALSE に設定 します。
クライアントは、 isSideways を TRUE に設定し、変換を使用して結果のジオメトリを右に 90 度回転することで、垂直ランをレンダリングできます。 isSideways パラメーターと isRightToLeft パラメーターの両方を true にすることはできません。
isRightToLeft
種類: BOOL
グリフの視覚的な順序。 このパラメーターが FALSE の場合、グリフの前進は左から右に進みます。 TRUE の場合、進む方向は右から左になります。 既定では、進む方向は左から右です。
geometrySink
種類: IDWriteGeometrySink*
アウトライン描画操作を実行するために呼び出されるインターフェイスへのポインター。
戻り値
種類: HRESULT
このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 7、Windows Vista SP2 および Windows Vista 用プラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2008 R2、Windows Server 2008 SP2 および Windows Server 2008 用プラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | dwrite.h |
Library | Dwrite.lib |
[DLL] | Dwrite.dll |