今天就說一下怎樣把一幅圖片做成黑白圖片的效果,就是把圖片黑白化。之前打開圖片的方法已經發表了,具體地址是:
再面對一幅要處理成黑白效果的圖片,我為此寫了以下一個函數,
/// <summary>
/// 將圖片轉為為黑白圖片
/// </summary>
/// <param name="mybt">要進行處理的圖片</param>
/// <param name="width">圖片的長度</param>
/// <param name="height">圖片的高度</param>
/// <returns>已經被處理后的黑白圖片</returns>
public Bitmap BWPic(Bitmap mybm, int width, int height)
{
Bitmap bm = new Bitmap(width, height);//初始化一個Bitmap對象,用來記錄處理后的圖片
int x, y, result;//x,y是循環次數,result是記錄處理后的像素值
Color pixel;
for (x = 0; x < width; x++)
{
for (y = 0; y < height; y++)
{
pixel = mybm.GetPixel(x, y);//獲取當前坐標的像素值
result = (pixel.R + pixel.G + pixel.B) / 3;//取紅綠藍三色的平均值
//繪圖,把處理后的值賦值到剛才定義的bm對象里面
bm.SetPixel(x, y, Color.FromArgb(result, result, result));
}
}
return bm;//返回黑白圖片
}
最后利用一個pictureBox控件把處理后的圖片呈現出來,利用的是下面這個語句,
int width = this.pictureBox.Width;//圖片容器的長度
int height = this.pictureBox.Height;//圖片容器的寬度
this.pictureBox.Image = pix.BWPic((Bitmap)this.pictureBox.Image, width, height);//處理圖片