단색 브러시를 만드는 방법

단색 브러시를 만들려면 ID2DRenderTarget::CreateSolidColorBrush 메서드를 사용하고 그리려는 색을 지정합니다. CreateSolidColorBrush 오버로드 중 일부는 브러시의 불투명도를 지정할 수도 있습니다.

다음 코드에서는 정사각형을 채우기 위해 단색 노란색-녹색 브러시를 만드는 방법과 정사각형의 윤곽선을 그리는 단색 검은색 브러시를 만드는 방법을 보여줍니다. 코드는 다음 그림에 표시된 출력을 생성합니다.

단색 노란색-녹색으로 채워진 사각형 그림

  1. 두 개의 ID2D1SolidColorBrush 포인터를 선언합니다. 하나는 검은색 그리기용이고 다른 하나는 노란색 녹색 그리기용입니다.

        ID2D1SolidColorBrush *m_pBlackBrush;
        ID2D1SolidColorBrush *m_pYellowGreenBrush;
    
  2. CreateSolidColorBrush 메서드를 호출하여 브러시를 만듭니다.

    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. FillRectangle 메서드를 호출하여 사각형의 내부를 노란색 녹색 브러시로 그리고 DrawRectangle 메서드를 사용하여 사각형의 윤곽선을 검은색 브러시로 그립니다.

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

Direct2D 참조