Comment créer un pinceau bitmap

Pour créer un pinceau bitmap, utilisez la méthode ID2D1RenderTarget::CreateBitmapBrush et spécifiez les propriétés du pinceau bitmap. Certaines surcharges vous permettent de spécifier les propriétés du pinceau. Le code suivant montre comment créer un pinceau bitmap pour remplir un carré et un pinceau noir uni pour dessiner le contour du carré. Le code produit la sortie illustrée dans la capture d’écran suivante.

Notes

À compter de Windows 8, vous pouvez utiliser la méthode CreateBitmapBrush sur l’interface ID2D1DeviceContext pour créer un ID2D1BitmapBrush1 au lieu d’un ID2D1BitmapBrush. ID2D1BitmapBrush1 ajoute des modes de mise à l’échelle de haute qualité au pinceau bitmap.

 

capture d’écran d’un carré rempli d’une bitmap de plante

  1. Déclarez une variable de type ID2D1BitmapBrush.

        ID2D1BitmapBrush *m_pBitmapBrush;
    
  2. Charger une bitmap à partir d’une ressource. Pour plus d’informations, consultez Comment charger une bitmap à partir d’une ressource.

    // 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. Choisissez les modes d’extension (D2D1_EXTEND_MODE) et d’interpolation (D2D1_BITMAP_INTERPOLATION_MODE) du pinceau bitmap, puis appelez la méthode CreateBitmapBrush pour créer un pinceau, comme illustré dans le code suivant.

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

Référence Direct2D