Comment créer un pinceau de couleur unie

Pour créer un pinceau uni, utilisez la méthode ID2DRenderTarget::CreateSolidColorBrush et spécifiez la couleur avec laquelle vous souhaitez peindre. Certaines surcharges CreateSolidColorBrush vous permettent également de spécifier l’opacité du pinceau.

Le code suivant montre comment créer un pinceau jaune-vert uni pour remplir un carré et un pinceau noir uni pour dessiner le contour du carré. Le code génère la sortie illustrée dans l’illustration suivante.

illustration d’un rectangle rempli d’une couleur jaune-vert unie

  1. Déclarez deux pointeurs ID2D1SolidColorBrush : un pour peindre en noir et un pour peindre en vert jaune.

        ID2D1SolidColorBrush *m_pBlackBrush;
        ID2D1SolidColorBrush *m_pYellowGreenBrush;
    
  2. Appelez la méthode CreateSolidColorBrush pour créer les pinceaux :

    if (SUCCEEDED(hr))
    {
        hr = m_pRenderTarget->CreateSolidColorBrush(
            D2D1::ColorF(D2D1::ColorF::Black, 1.0f),
            &m_pBlackBrush
            );
    }
    
    // Create a solid color brush with its rgb value 0x9ACD32.
    if (SUCCEEDED(hr))
    {
        hr = m_pRenderTarget->CreateSolidColorBrush(
            D2D1::ColorF(D2D1::ColorF(0x9ACD32, 1.0f)),  
            &m_pYellowGreenBrush
            );
    }
    
  3. Appelez la méthode FillRectangle pour peindre l’intérieur du rectangle avec le pinceau vert jaune et la méthode DrawRectangle pour peindre le contour du rectangle avec le pinceau noir :

    m_pRenderTarget->FillRectangle(&rcBrushRect, m_pYellowGreenBrush);
    m_pRenderTarget->DrawRectangle(&rcBrushRect, m_pBlackBrush, 1, NULL);
    

Référence Direct2D