3

ワイヤレス電話プロジェクターを開発しようとしています。プロジェクターに接続された PC を使用して、電話画面をプロジェクターに表示します。

j2meで実行中のアプリケーションのスクリーンショットをキャプチャする方法について少し混乱しています。

手伝ってくれますか?

j2meでスクリーンショットをキャプチャしたいだけです

4

2 に答える 2

0

このスニペットコードを使用すると、アプリのキャンバスの「スクリーンショット」を撮ることができます。

public Image getScreenShot() {
  Image screenshot = Image.createImage(getWidth(), getHeight());
  Graphics g = screenshot.getGraphics();
  paint(g);
  return Image.createImage(screenshot);
}    

getScreenShot ()を、その「スクリーンショット」が必要な任意のキャンバスに追加します。次に、RGBを取得し、byte []に​​変換して、ネットワークに渡すことができます。
参照:
developer.nokia

于 2012-03-04T11:22:55.037 に答える
0

あなたが何をしたかったのかよくわかりませんが、アプリが画面のスクリーンショットを取得する方法を考えているなら、私が言えることは、できることとできないことです。なぜあなたはそれをすることができないのですか?画面を作成する際にキャンバスを使用するとします。Canvas を Image に変換する方法はないと思います。キャンバスは、電話の画面に自分自身を描画するだけに制限されています。ただし、前に述べたように、アプリ画面のスクリーンショットを作成することもできます。必要なのは、Canvas 上の Image オブジェクトです。なぜ画像?これは、Image オブジェクトを画像ファイルに変換できるためです。そして、画像ファイルがスクリーンショットになります。しかしもちろん、キャンバス上の画像オブジェクトの画像ソースを動的に作成するものがあるはずです。

Image myScreen = Image.createImage(createScreen());

画面を作成するメソッド:

InputStream createScreen(){
    //dynamically creates the source of the screen
}

myScreenを使用してスクリーンショットを取得できます。ここでの欠点は、レンダリングが非常に遅いことです。これは可能ですが、これを実装するのはちょっと難しいと思います。

于 2012-02-16T05:50:19.710 に答える