Java 2D - 画像処理

トップ > チップス > Java 2D - 画像処理
2012-02-13, java2d

/tips/java/java2d **PNG画像でピクセル走査する PNGなどの画像は、「インデックスカラー」というモード(BufferedImage.TYPE_BYTE_INDEXED)で読み込まれるので、そのままの状態でgetRGB(x,y)メソッドを使用しても、正しい色情報を得ることができません。ちょっと荒っぽい方法ですが、RGBモードで同サイズの画像を用意して、そこに描画することで、(新しい画像の方で)ピクセル単位の走査(操作)ができるようになります。

:BufferedImage bi = ImageIO.read(pngfile); :BufferedImage nbi = new BufferedImage(bi.getWidth(), bi.getHeight(), : BufferedImage.TYPE_INT_ARGB); : :nbi.createGraphics().drawImage(bi, 0, 0, null); : :// これでやっとgetRGB,setRGBが正しく使える

この記事は役に立ちましたか?