天天看點

C# 圖像處理(四)—— 濾色效果

其實如果有看過之前寫的把圖檔黑白化、和把圖檔反色化的話,對于一些簡單的圖像處理是可以做得得心應手的,因為那些隻是先擷取坐标的像素值,再對這些值進行處理而已。然而現在說的濾色效果也是大同小異的。實作濾色效果的函數如下,

    /// <summary>

    /// 将圖檔進行濾色處理

    /// </summary>

    /// <param name="mybm">原始圖檔</param>

    /// <param name="width">原始圖檔的長度</param>

    /// <param name="height">原始圖檔的高度</param>

    /// <returns>已被濾色處理後的圖檔</returns>

    public Bitmap FilPic(Bitmap mybm, int width, int height)

    {

        Bitmap bm = new Bitmap(width, height);//初始化一個記錄濾色效果的圖檔對象

        int x, y;//循環次數

        Color pixel;

        for (x = 0; x < width; x++)

        {

            for (y = 0; y < height; y++)

            {

                pixel = mybm.GetPixel(x, y);//擷取目前坐标的像素值

                bm.SetPixel(x, y, Color.FromArgb(0, pixel.G, pixel.B));//繪圖

             }

        }

        return bm;//傳回濾色處理後的圖檔

    }

繼續閱讀