• ベストアンサー

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

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

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

  • ベストアンサー
noname#49664
noname#49664
回答No.1

まず、画像ファイルの読み込みはわかりますか? これは一番簡単なのは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あたりを使わないといけないかな?と思います。この場合は、もうちょっと面倒ですね。

BO-BO-keshi
質問者

お礼

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

関連するQ&A

専門家に質問してみよう