Freigeben über


ID2D1BitmapRenderTarget-Schnittstelle (d2d1.h)

Rendert in einer Zwischentextur, die von der CreateCompatibleRenderTarget-Methode erstellt wurde.

Vererbung

Die ID2D1BitmapRenderTarget-Schnittstelle erbt von ID2D1RenderTarget. ID2D1BitmapRenderTarget verfügt auch über folgende Membertypen:

Methoden

Die ID2D1BitmapRenderTarget-Schnittstelle verfügt über diese Methoden.

 
ID2D1BitmapRenderTarget::GetBitmap

Ruft die Bitmap für dieses Renderziel ab. Die zurückgegebene Bitmap kann für Zeichnungsvorgänge verwendet werden.

Hinweise

Ein ID2D1BitmapRenderTarget schreibt in eine Zwischentextur. Es ist nützlich, Muster für die Verwendung mit einem ID2D1BitmapBrush zu erstellen oder Zeichnungsdaten zwischenspeichern, die wiederholt verwendet werden.

Um stattdessen direkt in eine WIC-Bitmap zu schreiben, verwenden Sie die ID2D1Factory::CreateWicBitmapRenderTarget-Methode . Diese Methode gibt einen ID2D1RenderTarget zurück, der in die angegebene WIC-Bitmap schreibt.

Erstellen von ID2D1BitmapRenderTarget-Objekten

Um ein Bitmap-Renderziel zu erstellen, rufen Sie die ID2D1RenderTarget::CreateCompatibleRenderTarget-Methode auf .

Wie andere Renderziele ist ein ID2D1BitmapRenderTarget eine geräteabhängige Ressource und muss neu erstellt werden, wenn das zugeordnete Gerät nicht mehr verfügbar ist. Weitere Informationen finden Sie unter Ressourcenübersicht.

Beispiele

Im folgenden Beispiel wird die CreateCompatibleRenderTarget-Methode zum Erstellen eines ID2D1BitmapRenderTarget-Objekts und zum Zeichnen eines Rastermusters verwendet. Das Rastermuster wird als Quelle eines ID2D1BitmapBrush verwendet.

HRESULT DemoApp::CreateGridPatternBrush(
    ID2D1RenderTarget *pRenderTarget,
    ID2D1BitmapBrush **ppBitmapBrush
    )
{
    // Create a compatible render target.
    ID2D1BitmapRenderTarget *pCompatibleRenderTarget = NULL;
    HRESULT hr = pRenderTarget->CreateCompatibleRenderTarget(
        D2D1::SizeF(10.0f, 10.0f),
        &pCompatibleRenderTarget
        );
    if (SUCCEEDED(hr))
    {
        // Draw a pattern.
        ID2D1SolidColorBrush *pGridBrush = NULL;
        hr = pCompatibleRenderTarget->CreateSolidColorBrush(
            D2D1::ColorF(D2D1::ColorF(0.93f, 0.94f, 0.96f, 1.0f)),
            &pGridBrush
            );
        if (SUCCEEDED(hr))
        {
            pCompatibleRenderTarget->BeginDraw();
            pCompatibleRenderTarget->FillRectangle(D2D1::RectF(0.0f, 0.0f, 10.0f, 1.0f), pGridBrush);
            pCompatibleRenderTarget->FillRectangle(D2D1::RectF(0.0f, 0.1f, 1.0f, 10.0f), pGridBrush);
            pCompatibleRenderTarget->EndDraw();

            // Retrieve the bitmap from the render target.
            ID2D1Bitmap *pGridBitmap = NULL;
            hr = pCompatibleRenderTarget->GetBitmap(&pGridBitmap);
            if (SUCCEEDED(hr))
            {
                // Choose the tiling mode for the bitmap brush.
                D2D1_BITMAP_BRUSH_PROPERTIES brushProperties =
                    D2D1::BitmapBrushProperties(D2D1_EXTEND_MODE_WRAP, D2D1_EXTEND_MODE_WRAP);

                // Create the bitmap brush.
                hr = m_pRenderTarget->CreateBitmapBrush(pGridBitmap, brushProperties, ppBitmapBrush);

                pGridBitmap->Release();
            }

            pGridBrush->Release();
        }

        pCompatibleRenderTarget->Release();
    }

    return hr;
}

Im folgenden Codebeispiel wird der Pinsel verwendet, um ein Muster zu zeichnen.

// Paint a grid background.
m_pRenderTarget->FillRectangle(
    D2D1::RectF(0.0f, 0.0f, renderTargetSize.width, renderTargetSize.height),
    m_pGridPatternBitmapBrush
    );

Code wurde aus diesem Beispiel weggelassen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 7, Windows Vista mit SP2 und Plattformupdate für Windows Vista [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 R2, Windows Server 2008 mit SP2 und Plattformupdate für Windows Server 2008 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile d2d1.h

Weitere Informationen

CreateCompatibleRenderTarget

ID2D1Factory::CreateWicBitmapRenderTarget

ID2D1RenderTarget