通过拍摄颜色来排除图像的一部分
本文关键字:排除 图像 一部分 颜色 | 更新日期: 2023-09-27 18:07:40
我的问题很简单,但是我处理不了。我有一个阴阳。jpg文件,我想只得到圆形(没有矩形的休息,这应该是不可点击的),更完整的白色改变为红色和黑色的部分应该从图像中排除(不可点击)。
该图像将是我的表单的背景,我想在应用程序开始时显示。
private void hello_form_Paint(object sender, PaintEventArgs e)
{
Form f = (Form)sender;
f.BackgroundImage = global::TicTacToe.Properties.Resources.ying_yang1;
GraphicsPath formPath = new GraphicsPath();
Rectangle newRectangle = f.ClientRectangle;
e.Graphics.DrawEllipse(System.Drawing.Pens.Black, newRectangle);
newRectangle.Inflate(-5, -5);
formPath.AddEllipse(newRectangle);
f.Region = new Region(formPath);
}
在我的窗体上绘制事件,我显示使他们圆形,但这不是我要做的全部事情。如何从背景中排除黑色部分,如何将白色部分改为红色部分?
根据你的描述,你可能会发现:
http://msdn.microsoft.com/en-us/library/system.drawing.bitmap.maketransparent (v = vs.71) . aspx
Bitmap.MakeTransparent()
一个有用的探索方法,它允许您将图像中的给定颜色变为透明。
如果你使用透明背景文件,如。png或。gif,你应该能够只看到圆形的阴阳形状,当你把它设置为窗体背景。你可以很容易地用GIMP或Photoshop编辑。jpg,使矩形在圆的外面透明。
这是你想要做的吗?