ビットマップ ブラシを作成する方法

ビットマップ ブラシを作成するには、 ID2D1RenderTarget::CreateBitmapBrush メソッドを使用し、ビットマップ ブラシのプロパティを指定します。 一部のオーバーロードでは、ブラシのプロパティを指定できます。 次のコードは、四角形を塗りつぶすビットマップ ブラシを作成する方法と、正方形の輪郭を描画する単色の黒いブラシを作成する方法を示しています。 このコードでは、次のスクリーン ショットに示す出力が生成されます。

Note

Windows 8以降、ID2D1DeviceContext インターフェイスで CreateBitmapBrush メソッドを使用して、ID2D1BitmapBrush ではなく ID2D1BitmapBrush1 を作成できます。 ID2D1BitmapBrush1 は 、ビットマップ ブラシに高品質のスケーリング モードを追加します。

 

植物ビットマップで塗りつぶされた四角形のスクリーン ショット

  1. ID2D1BitmapBrush 型の変数を宣言します。

        ID2D1BitmapBrush *m_pBitmapBrush;
    
  2. リソースからビットマップを読み込みます。 詳細については、「 リソースからビットマップを読み込む方法」を参照してください。

    // Create the bitmap to be used by the bitmap brush.
    if (SUCCEEDED(hr))
    {
        hr = LoadResourceBitmap(
            m_pRenderTarget,
            m_pWICFactory,
            L"FERN",
            L"Image",
            &m_pBitmap
            );
    
  3. ビットマップ ブラシの拡張モード (D2D1_EXTEND_MODE) と補間モード (D2D1_BITMAP_INTERPOLATION_MODE) を選択し、次のコードに示すように CreateBitmapBrush メソッドを呼び出してブラシを作成します。

    hr = m_pRenderTarget->CreateBitmapBrush(
        m_pBitmap,
        &m_pBitmapBrush
        );
    

Direct2D リファレンス