2009-08-14 97 views
2

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

j2me有没有jpeg编码器?
我发现了一个用j2se编写的程序,但它使用j2se特定的类。

回答

3

顺便说一下,由于JSR 234在许多设备上都不支持,因此我将Sun的JIMI图像库和端口JPEG编码部分转换为j2me。它工作正常,并没有使用太多的内存。

+0

我在github上分享过它:https://github.com/Pash237/j2me-JPEG-library – 2011-03-24 11:11:39

+0

感谢分享图书馆@Pavel – Ajibola 2012-06-24 15:41:32

0

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

+0

最新的设备支持jpg-image的_opening_(解码)。但我需要将自定义图像保存为jpeg。也许有一些供应商特定的API,它可以_save_(编码)为JPEG格式? – 2009-08-15 17:54:05

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格式。

相关问题