如何在Java ME中减少图像颜色深度/压缩图像大小?

时间:2009-01-09 00:22:13

标签: image java-me compression scale color-depth

我需要将图像从手机传输到服务器。我能够减小图像屏幕大小,但不能减小内存大小。我明白我必须处理颜色深度。 J2ME似乎没有提供J2SE中可用的任何缩放方法:

image rescaled = image.getScaledInstance(thumbWidth, thumbHeight,  Image.SCALE_AREA_AVERAGING);
BufferedImage biRescaled = toBufferedImage(rescaled, thumbWidth, thumbHeight, BufferedImage.TYPE_INT_RGB);

我该如何解决这个问题?我希望在传输到服务器之前减小图像内存大小。

1 个答案:

答案 0 :(得分:1)

看看这个(GEAR Java Mobile Framework)。有一个实用程序包,其中包含一个名为ImageHelper的类。它包含一些缩放图像的方法,从而减小图像的大小。它在移动设备上运行良好,执行起来相当快。如果您的图像仍然很大或者您不想丢失太多数据,请考虑使用压缩算法。 zlib提供了一个非常好的解决方案,并且有一个可以使用的J2ME实现。