Udostępnij za pośrednictwem


Jak utworzyć pędzel mapy bitowej

Aby utworzyć pędzel mapy bitowej, użyj metody ID2D1RenderTarget::CreateBitmapBrush i określ właściwości pędzla mapy bitowej. Niektóre przeciążenia umożliwiają określenie właściwości pędzla. Poniższy kod pokazuje, jak utworzyć pędzel bitmapowy, aby wypełnić kwadrat, oraz pędzel jednolity czarny, aby narysować kontur kwadratu. Kod generuje dane wyjściowe pokazane na poniższym zrzucie ekranu.

Notatka

Począwszy od systemu Windows 8, można użyć metody CreateBitmapBrush w interfejsie ID2D1DeviceContext, aby utworzyć interfejs ID2D1BitmapBrush1 zamiast ID2D1BitmapBrush. ID2D1BitmapBrush1 dodaje wysokiej jakości tryby skalowania do pędzla mapy bitowej.

 

zrzut ekranu kwadratu wypełnionego mapą bitową roślin

  1. Zadeklaruj zmienną typu ID2D1BitmapBrush.

        ID2D1BitmapBrush *m_pBitmapBrush;
    
  2. Załaduj mapę bitową z zasobu. Aby uzyskać więcej informacji, zobacz Jak załadować bitmapę z zasobu.

    // 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. Wybierz tryby rozszerzania (D2D1_EXTEND_MODE) i tryb interpolacji (D2D1_BITMAP_INTERPOLATION_MODE) pędzla bitmapowego, a następnie wywołaj metodę CreateBitmapBrush, aby utworzyć pędzel, jak pokazano w poniższym kodzie.

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

Direct2D Referencja