什么相当于C#中VB6.0的MaskColor属性

时间:2011-08-20 05:41:42

标签: c# vb6 background-color masking

VB 6.0中的MaskColor属性用于删除Image的背景颜色。我怎样才能在C#中做同样的事情?

2 个答案:

答案 0 :(得分:3)

您可以使用MakeTransparent(Color color)作为位图图像。例如:

//convert the red color in the image into transparent.
((Bitmap)BackgroundImage).MakeTransparent(Color.Red);

答案 1 :(得分:1)

我认为没有直接的等价物。

我过去使用ColorMap类将背景颜色映射到Color.Transparent。然后我创建一个ImageAttributes对象并调用SetRemapTable()函数并将其传递给我的ColorMap。然后通过将ImageAttributes传递给DrawImage方法重绘图像。

编辑:

Jalal发布了一种更简单的纯色方式。我仔细研究了上面使用上述方法的代码,我将多个相同基色的阴影映射到透明。