• 締切済み

BufferedImageをbyte[]に変換ってできますか?

画像データを保持しているBufferedImageオブジェクト から、その内容をbyte[]で取得する方法はあるので しょうか? また、Image⇒byte[]も可能でしょうか?

みんなの回答

  • hrm_mmm
  • ベストアンサー率63% (292/459)
回答No.1

PixelGrabberを使ってint[]にピクセルの色データを取り出した後に3色に分解して byteに変換でしょうか? でも、javaのbyte型は-127~127で、unsignedという概念は無いようなので、 byte型にする意味はあるのでしょうか? コンストラクタ PixelGrabber(Image img, int x, int y, int w, int h, int[] pix, int off, int scansize) 例文 PixelGrabber pg=new PixelGrabber(image,0,0,width,height,pix,0,width); try { pg.grabPixels(); int red = 0xff & (pix[0]>>16); int green = 0xff & (pix[0]>>8); int blue = 0xff & (pix[0] ); } catch(InterruptedException e) {System.out.println("エラー");}

madeInHeaven
質問者

補足

すいません。質問内容を微妙に変更します。 new BufferedImage( int width, int height, TYPE_INT_RGB) でBufferedImageインスタンスを作成した場合、 そのimageTypeを「TYPE_3BYTE_RGB」に変更する 方法はあるのでしょうか?

関連するQ&A