こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

画像の指定した位置の色情報を取得するメソッド

自分で描いた100×100のgif画像を取り込んで、その指定した位置の色情報を取得したいのですが、Javaでできるでしょうか?

投稿日時 - 2005-05-08 18:14:16

QNo.1375589

困ってます

質問者が選んだベストアンサー

まず、画像ファイルの読み込みはわかりますか? これは一番簡単なのはjavax.imageio.ImageIOあたりを使ったものでしょう。

File f = new File( ファイルのパス );
BufferedImage image = ImageIO.read(f);

こんな感じで読み込めますので、それをそのまま画面に表示するなどすれば良いでしょう。なお、上の処理は例外を発生させるのでtry内で実行させます。

次に、特定の地点の色を調べる方法ですが、イメージが画面に表示されているのであれば、java.awt.Robotを使って割と簡単にできます。

Color c = new Robot().getPixelColor(100,100);

例えばこんな具合に縦横の位置を引数に指定することで、その位置のColorを取得できます。これも例外を発生させるので、try内で実行するようにしてください。
 画面に表示されていない、オフスクリーンなImageとなると、PixelGrabberあたりを使わないといけないかな?と思います。この場合は、もうちょっと面倒ですね。

投稿日時 - 2005-05-08 19:05:11

お礼

ご丁寧なご回答ありがとうございます!
おかげさまで思っていた通りのプログラムが書けました。Javaには本当にいろいろなメソッドがありますね。たいへん勉強になりました!

投稿日時 - 2005-05-08 23:52:08

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問