■ 회색조 비트맵을 구하는 방법을 보여준다.
▶ 예제 코드 (C#)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
using System.Drawing; #region 회색조 비트맵 구하기 - GetGrayScaleBitmap(sourceImage) /// <summary> /// 회색조 비트맵 구하기 /// </summary> /// <param name="sourceImage">소스 이미지</param> /// <returns>회색조 비트맵</returns> public Bitmap GetGrayScaleBitmap(Image sourceImage) { Bitmap targetBitmap = new Bitmap(sourceImage); Color color; int brightness; for(int y = 0; y < targetBitmap.Height; y++) { for(int x = 0; x < targetBitmap.Width; x++) { color = targetBitmap.GetPixel(x, y); brightness = (int)(0.299 * color.R + 0.587 * color.G + 0.114 * color.B); color = Color.FromArgb(brightness, brightness, brightness); targetBitmap.SetPixel(x, y, color); } } return targetBitmap; } #endregion |