j2me - 如何以jpg格式创建图像?

时间:2009-08-14 13:39:27

标签: java-me camera jpeg image-gallery

我的j2me应用程序必须拍照,稍微编辑并保存到某处(或发送到服务器)。 相机以jpg格式返回图像的字节,但在我从中创建一个Image对象后(使用Image.createImage()),我无法将其打包回jpg。

j2me有jpeg编码器吗?
我找到了一个用j2se编写的,但是它使用了j2se特定的类。

3 个答案:

答案 0 :(得分: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");

然后设置输入Image,输出流并启动媒体处理器。瞧!您已将图像保存为JPEG格式。

答案 1 :(得分:3)

顺便说一句,由于JSR 234不支持许多设备,我将Sun的JIMI图像库和端口JPEG编码部分带到j2me。它工作正常,不会占用太多内存。

答案 2 :(得分:0)

纯粹依赖于实现,某些设备允许您使用jpg文件创建Image对象,而其他设备则不允许。然而,Sun的规范说设备必须支持png,但其他设备由OEM制造商自行决定