如题
会的大神告诉下,简单点说,网上看了很多,太乱了
比如我有个Bitmap图片如何进行混色 或者如何将它变暗都可以。
谢谢了 本人新手,见笑
会的大神告诉下,简单点说,网上看了很多,太乱了
比如我有个Bitmap图片如何进行混色 或者如何将它变暗都可以。
谢谢了 本人新手,见笑
解决方案 »
- asp.net中绑定问题
- GridView菜鸟问题,寻找答案
- Winform中DataGridView底部合计问题?
- datagridview如何让列标题居中及列隐藏
- 如何实现一个程式,可以将保存用户数据和设置保存于程式本体.
- 字符操作比较问题
- .net framework 2.0正式版下的程序,中文输入法总是被切换成全角,怎么办?
- 通讯问题:需要写一个类似联众大厅功能,如何实现监听多个CLIENT?
- 大家看看我这样对吗?新手很急呀.
- 请教下即时通讯的问题1?类qq的即时通讯问题..
- [100分求助] 如何用 Webbrowser 控件来点开 WebQQ 的登陆图标?
- DateSet取出一行行数据显示在Repeater中
http://msdn.microsoft.com/en-us/library/system.drawing.imaging.colormatrix.aspx需要有一些线性代数基础知识,矩阵乘法等
//Alpha混合public void AlphaBlend(Bitmap source, byte alpha, Color backColor)
{
for (int x = 0; x < source.Width; x++)
{
for (int y = 0; y < source.Height; y++)
{
Color sc = source.GetPixel(x, y);
byte R = (byte)(sc.R * alpha / 255 + backColor.R * (255 - alpha) / 255);
byte G = (byte)(sc.G * alpha / 255 + backColor.G * (255 - alpha) / 255);
byte B = (byte)(sc.B * alpha / 255 + backColor.B * (255 - alpha) / 255);
byte A = (byte)(sc.A * alpha / 255 + backColor.A * (255 - alpha) / 255);
bit.SetPixel(x, y, Color.FromArgb(A, R, G, B));
}
}
}
public void AlphaBlend(Bitmap source, byte alpha, Color backColor);
参数信息:
source: 源图像
alpha: alpha值
backColor:背景色
==>>
source.SetPixel(x, y, Color.FromArgb(A, R, G, B));