IDWriteBitmapRenderTarget::DrawGlyphRun メソッド

指定された位置にあるビットマップ ターゲットに一連のグリフを描画します。

構文

virtual HRESULT DrawGlyphRun(
                   FLOAT  baselineOriginX,
                   FLOAT  baselineOriginY,
                   DWRITE_MEASURING_MODE  measuringMode,
  [in]             const DWRITE_GLYPH_RUN * glyphRun,
                   IDWriteRenderingParams * renderingParams,
                   COLORREF  textColor,
  [out, optional]  RECT * blackBoxRect
) = 0;

パラメーター

  • baselineOriginX
    DIB の左上隅を基準とした、ベースラインの原点の水平位置 (DIP 単位)。

  • baselineOriginY
    DIB の左上隅を基準とした、ベースラインの原点の垂直位置 (DIP 単位)。

  • measuringMode
    レンダリング モードを決定するために他のプロパティで使用する、グリフ実行に含まれるグリフの測定方法。

  • glyphRun [in]
    グリフ実行のプロパティを格納する構造体。

  • renderingParams
    レンダリングの動作を制御するオブジェクト。

  • textColor
    テキストの前景色。

  • blackBoxRect [out, optional]
    グリフ実行の描画による影響を受けるすべてのピクセルの境界ボックス (DIP ではなくピクセル単位) を受け取る省略可能な四角形。ブラック ボックス四角形は、ビットマップの寸法より大きくなることがあります。

戻り値

メソッドが成功した場合は、S_OK が返されます。 それ以外の場合は、エラー コードが返されます。HRESULT.

解説

IDWriteBitmapRenderTarget::DrawGlyphRun を使用すると、実装するカスタム テキスト レンダラーからビットマップにレンダリングできます。次のコードに示すように、カスタム テキスト レンダラーはこのメソッドを IDWriteTextRenderer::DrawGlyphRun コールバック メソッド内から呼び出す必要があります。

  STDMETHODIMP GdiTextRenderer::DrawGlyphRun(
    __maybenull void* clientDrawingContext,
    FLOAT baselineOriginX,
    FLOAT baselineOriginY,
    DWRITE_MEASURING_MODE measuringMode,
    __in DWRITE_GLYPH_RUN const* glyphRun,
    __in DWRITE_GLYPH_RUN_DESCRIPTION const* glyphRunDescription,
    IUnknown* clientDrawingEffect
    )
{
    HRESULT hr = S_OK;

    // Pass on the drawing call to the render target to do the real work.
    RECT dirtyRect = {0};

    hr = pRenderTarget_->DrawGlyphRun(
        baselineOriginX,
        baselineOriginY,
        measuringMode,
        glyphRun,
        pRenderingParams_,
        RGB(0,200,255),
        &dirtyRect
        );
    

    return hr;
}

baselineOriginXbaslineOriginYmeasuringMethod、および glyphRun の各パラメーターは、コールバック メソッドが呼び出されたときに (引数として) 指定されます。renderingParamstextColor、および blackBoxRect は指定されません。

既定のレンダリング パラメーターは、IDWriteFactory::CreateMonitorRenderingParams メソッドを使用して取得できます。

要件

クライアントの最小要件

Windows 7, Windows Vista SP2 および Windows Vista 用のプラットフォーム更新プログラム

サーバーの最小要件

Windows Server 2008 R2, Windows Server 2008 SP2 および Windows Server 2008 用のプラットフォーム更新プログラム

ヘッダー

Dwrite.h

ライブラリ

Dwrite.lib

DLL

Dwrite.dll

参照

IDWriteBitmapRenderTarget