Bagikan melalui


Metode ID2D1RenderTarget::CreateCompatibleRenderTarget

Membuat target render bitmap baru untuk digunakan selama gambar di luar layar menengah yang kompatibel dengan target render saat ini.

Daftar kelebihan beban

Metode Deskripsi
CreateCompatibleRenderTarget(D2D1_SIZE_F,D2D1_SIZE_U,D2D1_PIXEL_FORMAT,D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS,ID2D1BitmapRenderTarget**) Membuat target render bitmap untuk digunakan selama gambar di luar layar menengah yang kompatibel dengan target render saat ini.
CreateCompatibleRenderTarget(D2D1_SIZE_F*,D2D1_SIZE_U*,D2D1_PIXEL_FORMAT*,D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS,ID2D1BitmapRenderTarget**) Membuat target render bitmap untuk digunakan selama gambar di luar layar menengah yang kompatibel dengan target render saat ini.
CreateCompatibleRenderTarget(ID2D1BitmapRenderTarget**) Membuat target render bitmap baru untuk digunakan selama gambar di luar layar menengah yang kompatibel dengan target render saat ini dan memiliki ukuran, DPI, dan format piksel yang sama (tetapi bukan mode alfa) sebagai target render saat ini.
CreateCompatibleRenderTarget(D2D1_SIZE_F,ID2D1BitmapRenderTarget**) Membuat target render bitmap baru untuk digunakan selama gambar di luar layar menengah yang kompatibel dengan target render saat ini dan memiliki format piksel yang sama (tetapi bukan mode alfa) sebagai target render saat ini.
CreateCompatibleRenderTarget(D2D1_SIZE_F,D2D1_SIZE_U,ID2D1BitmapRenderTarget**) Membuat target render bitmap untuk digunakan selama gambar di luar layar menengah yang kompatibel dengan target render saat ini. Target render bitmap baru memiliki format piksel yang sama (tetapi bukan mode alfa) sebagai target render saat ini.
CreateCompatibleRenderTarget(D2D1_SIZE_F,D2D1_SIZE_U,D2D1_PIXEL_FORMAT,ID2D1BitmapRenderTarget**) Membuat target render bitmap untuk digunakan selama gambar di luar layar menengah yang kompatibel dengan target render saat ini.

Contoh

Contoh berikut menggunakan metode CreateCompatibleRenderTarget untuk membuat ID2D1BitmapRenderTarget dan menggunakannya untuk menggambar pola kisi. Pola kisi digunakan sebagai sumber ID2D1BitmapBrush.

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;
}

Contoh kode berikut menggunakan kuas untuk melukis pola.

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

Kode telah dihilangkan dari contoh ini.

Persyaratan

Persyaratan Nilai
Header
D2d1.h
Pustaka
D2d1.lib
DLL
D2d1.dll

Lihat juga

ID2D1RenderTarget