我想将对象绘制为部分透明,但我不知道该怎么做。我正在使用MSDN并使用C ++进行编码。
以下代码是我绘制常规矩形的方法,但是我想绘制一个透明矩形。
VOID DrawingObject::Draw()
{
ID2D1HwndRenderTarget *m_pRenderTarget;
m_pRenderTarget->FillRectangle(RectF(10, 10, 20, 20),
m_pD2DDriver->GetBrush(static_cast<DrawingColor>(m_uColorIndex))
);
}
任何帮助或指导,我们将不胜感激。
看一下Brush接口。您可以创建画笔,并使用它SetOpacity
来创建透明画笔以发送到矩形。
您也可以直接使用D2D1::ColorF(red,green,blue,alpha)
函数创建颜色。该alpha
参数是透明度。0
完全透明而1
不透明。
如果您不知道如何使用它,则此链接包含带有如何使用ID2D1画笔的代码的出色示例。以下是该页面的一些示例代码。
ID2D1SolidColorBrush *pGridBrush = NULL;
hr = pCompatibleRenderTarget->CreateSolidColorBrush(
D2D1::ColorF(D2D1::ColorF(0.93f, 0.94f, 0.96f, 1.0f)),
&pGridBrush
);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句