2009-05-19 5 views
1

BufferedImage)の下にグラフィック情報を「読む」ことができますか?スイング:コンポーネントの下にあるグラフィック情報を読み取る方法は?

は、私は、そのコンポーネントの半透明の(すでに完了) を作ると、このような成分(ではなく、コンポーネント自体)の下にあるすべての 要素をぼかすなど基本的なものにグラフィック効果を、適用したいです。

私のアプローチが考えられる間違っている:
私は私塗料(...)方法で に与えられたGraphics2Dインスタンスからグラフィック情報を取得しようとするが、それは右、空ですか?

答えて

1

質問:コンポーネントはトップレベルですか(つまり、JFrameのデスクトップにあるものを知りたいですか)、またはコンポーネントの下にレイヤーされているコンポーネントについて知りたいだけですか?

1)の場合、java.awt.Robotの方法createScreenCapture(Rectangle)でスクリーンショットを取得するのは簡単です。この場合はRectangleがウィンドウ境界になります。

2)の場合、下のコンポーネントへの参照がある場合、paint(Graphics)Graphicsオブジェクトがどこに由来するかを気にしません。 BufferedImageを作成し、createGraphics()Graphics2Dが必要な場合)を呼び出して、キャプチャするコンポーネントのpaint(Graphics)メソッドに結果を渡します。
コンポーネントがコンテナである場合、コンポーネントもその子をペイントします。これはあなたが望むものかもしれません。

+0

私は番号2が必要です)。ありがとう、私はこれを試してみる!!!! –

関連する問題