2013-09-25 52 views
0

我需要將Java代碼更改爲Android。如何更改android中的緩衝圖像和圖形?

我的Java代碼是BufferedImageGraphics。我應該如何將以下Java代碼更改爲Android。

我的代碼,

public static BufferedImage buff(BufferedImage bi){ 
    if (isGray(bi)){ 
     return bi; 
    } 
    BufferedImage gray = new BufferedImage(bi.getWidth(), bi.getHeight(), 10); 
    Graphics gr = gray.getGraphics(); 
    gr.drawImage(bi, 0, 0, null); 
    gr.dispose(); 
    return gray; 
} 

在此先感謝。

+0

它是一個位圖你正試圖返回? – Zax

回答

0

javax.imageio中是不是在Android SDK,但Bitmap類可以使用,如果你想轉換爲灰色,您可以使用此:

public static Bitmap toGrayscale(Bitmap bm) { 
    Bitmap bmpGrayscale = Bitmap.createBitmap(bm.getWidth(), bm.getHeight(), Bitmap.Config.RGB_565); 

    Canvas c = new Canvas(bmpGrayscale); 
    Paint paint = new Paint(); 

    ColorMatrix cm = new ColorMatrix(); 
    cm.setSaturation(0); 
    ColorMatrixColorFilter f = new ColorMatrixColorFilter(cm); 
    paint.setColorFilter(f); 

    c.drawBitmap(bm, 0, 0, paint); 
    return bmpGrayscale; 
}