2

私の j2me アプリケーションは、写真を撮り、少し編集して、どこかに保存する (またはサーバーに送信する) 必要があります。カメラは画像のバイトを jpg 形式で返しますが、( を使用して) そこから Image オブジェクトを作成した後、それImage.createImage()を jpg に戻すことができませんでした。

j2me 用の jpeg エンコーダはありますか?
j2se で書かれたものを見つけましたが、j2se 固有のクラスを使用しています。

4

3 に答える 3

3

これはできる!独自の API やライブラリがなくても。これは、電話機が JSR 234 をサポートし、それを介して JPEG ファイルを処理できる場合に実現できます。これをして:

//Create MediaProcessor for raw Image
MediaProcessor mediaProc = GlobalManager.createMediaProcessor("image/raw");
//Get control over the format
ImageFormatControl formatControl = (ImageFormatControl)
        mediaProc.getControl("javax.microedition.amms.control.ImageFormatControl");
//Set necessary format
formatControl.setFormat("image/jpeg");

次に、 input Image、 output stream を設定し、メディア プロセッサを起動します。出来上がり!画像を JPEG で保存しました。

于 2009-08-16T09:29:06.863 に答える
3

ところで、JSR 234 は多くのデバイスでサポートされていないため、Sun の JIMI イメージ ライブラリを使用して、JPEG エンコード部分を j2me に移植します。正常に動作し、メモリをあまり使用しません。

于 2009-10-12T14:06:13.203 に答える
0

これは純粋に実装に依存します。一部のデバイスでは、jpg ファイルを使用して Image オブジェクトを作成できますが、他のデバイスでは作成できません。ただし、Sun の仕様によると、デバイスは png をサポートする必要がありますが、それ以外は OEM メーカーの裁量に任されています。

于 2009-08-15T04:29:22.073 に答える