2

オブジェクトを部分的に透明に描画したいのですが、方法がわかりません。MSDN を使用し、C++ でコーディングしています。

次のコードは、正四角形を描画する方法ですが、透明な四角形を描画したいです。

VOID DrawingObject::Draw()
{
    ID2D1HwndRenderTarget *m_pRenderTarget;
    m_pRenderTarget->FillRectangle(RectF(10, 10, 20, 20),
        m_pD2DDriver->GetBrush(static_cast<DrawingColor>(m_uColorIndex))
        );
}

どんな助けや指導も大歓迎です。

4

1 に答える 1

4

Brush Interfaceを見てください。SetOpacityブラシを作成し、透明なブラシを作成して長方形に送信するために使用できます。

関数を使用して直接色を作成することもできD2D1::ColorF(red,green,blue,alpha)ます。alpha議論は透明性です 。0は完全に透明1ですが、不透明です。

使用方法がわからない場合は、このリンクにID2D1 ブラシの使用方法に関するコードを含む素晴らしい例が含まれています。以下は、そのページのサンプル コードです。

ID2D1SolidColorBrush *pGridBrush = NULL;
hr = pCompatibleRenderTarget->CreateSolidColorBrush(
    D2D1::ColorF(D2D1::ColorF(0.93f, 0.94f, 0.96f, 1.0f)),
    &pGridBrush
    );
于 2013-08-16T17:56:26.923 に答える