Android 圖片轉灰度

[java]  

/** 

 * 圖片轉灰度 

 *  

 * @param bmSrc 

 * @return 

 */  

public static Bitmap bitmap2Gray(Bitmap bmSrc)  

{  

    int width, height;  

    height = bmSrc.getHeight();  

    width = bmSrc.getWidth();  

    Bitmap bmpGray = null;  

    bmpGray = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565);  

    Canvas c = new Canvas(bmpGray);  

    Paint paint = new Paint();  

    ColorMatrix cm = new ColorMatrix();  

    cm.setSaturation(0);  

    ColorMatrixColorFilter f = new ColorMatrixColorFilter(cm);  

    paint.setColorFilter(f);  

    c.drawBitmap(bmSrc, 0, 0, paint);  

  

    return bmpGray;  

}  

 

/**

* 圖片轉灰度

* @param bmSrc

* @return

*/

public static Bitmap bitmap2Gray(Bitmap bmSrc)

{

int width, height;

height = bmSrc.getHeight();

width = bmSrc.getWidth();

Bitmap bmpGray = null;

bmpGray = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565);

Canvas c = new Canvas(bmpGray);

Paint paint = new Paint();

ColorMatrix cm = new ColorMatrix();

cm.setSaturation(0);

ColorMatrixColorFilter f = new ColorMatrixColorFilter(cm);

paint.setColorFilter(f);

c.drawBitmap(bmSrc, 0, 0, paint);

 

return bmpGray;

}

效果圖:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *