Erstellen eines Volltonfarbpinsels

Verwenden Sie zum Erstellen eines Volltonfarbpinsels die ID2DRenderTarget::CreateSolidColorBrush-Methode, und geben Sie die Farbe an, mit der Sie zeichnen möchten. Einige der CreateSolidColorBrush-Überladungen ermöglichen es Ihnen auch, die Deckkraft des Pinsels anzugeben.

Der folgende Code zeigt, wie Sie einen gelb-grünen Pinsel erstellen, um ein Quadrat zu füllen, und einen soliden schwarzen Pinsel, um den Umriss des Quadrats zu zeichnen. Der Code erzeugt die in der folgenden Abbildung gezeigte Ausgabe.

Abbildung eines Rechtecks, das mit einer vollfarbigen gelb-grünen Farbe gefüllt ist

  1. Deklarieren Sie zwei ID2D1SolidColorBrush-Zeiger: einen zum Malen von Schwarz und einen zum Malen gelbgrün.

        ID2D1SolidColorBrush *m_pBlackBrush;
        ID2D1SolidColorBrush *m_pYellowGreenBrush;
    
  2. Rufen Sie die CreateSolidColorBrush-Methode auf, um die Pinsel zu erstellen:

    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. Rufen Sie die FillRectangle-Methode auf, um das Innere des Rechtecks mit dem gelben grünen Pinsel zu zeichnen, und die DrawRectangle-Methode, um die Kontur des Rechtecks mit dem schwarzen Pinsel zu zeichnen:

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

Direct2D-Referenz