.Net使用bitmap将图片色彩变为灰色
//获取源图片路径
string filepath = Server.MapPath("~/Images/r.jpeg");
//将源图片转为bitmap可操作模式
Bitmap bmp = new Bitmap(Bitmap.FromFile(filePath));
int value = 0;
for (int i = 0; i < bmp.Height; i++)
{
for (int j = 0; j < bmp.Width; j++)
{
//得到当前坐标处灰色颜色值
value = GetGrayNumColor(bmp.GetPixel(j,i));
//将指定坐标处的像素设为指定的颜色
bmp.SetPixel(j, i, Color.FromArgb(value, value, value));
}
}
string newPath =Server.MapPath("~/Images/"+ DateTime.Now.ToString("yyyyMMddHHmmsss") + ".jpeg");
//保存为新的图片路径
bmp.Save(newPath);
//将rgb色彩转为灰色
public int GetGrayNumColor(Color posClr) {
return (posClr.R * 19595 + posClr.G * 38469 + posClr.B * 7472) >> 16;
}

浙公网安备 33010602011771号