-3

ユーザーがJFileChooserを使用して選択した画像を読み取り、カラーチャンネル(R、G、B)と画像の幅と高さを取得できるようにしたい。

これは、選択した画像ファイルを読み取るための正しいアプローチですか。

File im1 = new File(chooser.getSelectedFile(), null);       
BufferedImage buff =ImageIO.read(im1);

または、個別のカラーチャネルの値を取得し、個別の値を取得するために、画像ファイルを読み取るためのより良い方法はありますか。

4

2 に答える 2

2

コードは問題ないようです。幅、高さ、RGBを使い続けてください。

File im1 = chooser.getSelectedFile();    
BufferedImage buff = ImageIO.read(im1);

if (buff != null) {
    System.out.println(buff.getWidth() + " " + buff.getHeight());
    System.out.println(buff.getRGB(0, 0));
}
于 2013-01-03T12:59:26.090 に答える
0

画像を読み込むための「より良い」方法が見つからなかったので、正しく実行していると思います。

質問全体に答えるために、画像から特定のカラーチャンネルを取得する方法の例を次に示します。

Color c = new Color(image.getRGB());
int red = c.getRed();
int green = c.getGreen();
int blue = c.getBlue();
于 2013-01-03T13:57:22.313 に答える