我正试图在高端诺基亚手机(N95)上进行图像捕捉.手机的内置摄像头非常好(4百万像素),但在j2me我似乎只能获得最大1360x1020的图像.我从这个例子中得到了很大的帮助http://developers.sun.com/mobility/midp/articles/picture/
我做的是从640x480开始,分别将宽度和高度增加80和60,直到失败.代码行是:
jpg = mVideoControl.getSnapshot("encoding = jpeg&quality = 100&width ="+ width +"&height ="+ height);
所以这两个问题是:1.当获得大于1360x1020的图像时,手机会抛出异常.2.较高分辨率的图像看起来只是较小分辨率图像的平滑版本.例如,当我拍摄一张640x480的图像并在photoshop中增加它时,我无法区分它和一个据称为1360x1020的图像.
这是手机上j2me的限制吗?如果有的话,是否有人知道如何从j2me应用程序中获得更高的分辨率和/或如何从另一个应用程序中访问本机相机?
诺基亚论坛上的这个解释可能对您有帮助
它说"可以捕获的最大图像大小取决于所选的图像格式,编码选项和可用的空闲堆内存."
和
"因此强烈建议至少将较大的图像(大于1mpix)捕获为JPEG图像和普通图像大小(例如1600x1200,2mpix等).支持的常见图像大小取决于产品和平台版本."
因此,我建议您尝试使用1600x1200,1024x768以及N95指南提及的任何图像分辨率2.使用BMP和PNG.
无论如何,基于我之前的经验(可能已经过时),j2me实现充满了bug,因此可能没有一个可行的解决方案来解决您的问题.