Come creare un pennello a tinta unita
Per creare un pennello a tinta unita, utilizzare il metodo ID2DRenderTarget::CreateSolidColorBrush e specificare il colore con cui si desidera disegnare. Alcuni sovraccarichi CreateSolidColorBrush consentono anche di specificare l'opacità del pennello.
Il codice seguente illustra come creare un pennello giallo-verde solido per riempire un quadrato e un pennello nero a tinta unita per disegnare il contorno del quadrato. Il codice produce l'output illustrato nella figura seguente.
Dichiara due puntatori ID2D1SolidColorBrush: uno per disegnare nero e uno per disegnare il verde giallo.
ID2D1SolidColorBrush *m_pBlackBrush; ID2D1SolidColorBrush *m_pYellowGreenBrush;
Chiamare il metodo CreateSolidColorBrush per creare i pennelli:
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 ); }
Chiamare il metodo FillRectangle per disegnare l'interno del rettangolo con il pennello verde giallo e il metodo DrawRectangle per disegnare il contorno del rettangolo con il pennello nero:
m_pRenderTarget->FillRectangle(&rcBrushRect, m_pYellowGreenBrush); m_pRenderTarget->DrawRectangle(&rcBrushRect, m_pBlackBrush, 1, NULL);
Argomenti correlati