2

我正在媒体管理器上做一个网络项目。我上传了高分辨率图片,需要将这些图片转换为低分辨率,以便将生成的图片压缩成更小的尺寸。使用 Java 怎么可能?

如果可能,请发布源代码。

谢谢,纳文

4

4 回答 4

3

不确定我是否正确,但如果您想更改图像的大小,Image 类有一个getScaledInstance方法:

Image theImage = ...
Image scaled = theImage.getScaledInstance(32, -1, Image.SCALE_FAST);

有关详细信息,请参阅Image的文档

于 2009-11-25T17:50:34.460 回答
0

我已经看到JAI用于此目的。

于 2009-11-25T16:54:02.143 回答
0

如果您不需要对高分辨率图像做任何事情,您可以在图像阅读器上添加一个参数,例如

ImageReadParam param = reader.getDefaultReadParam();
param.setSourceSubsampling(4, 4, 0, 0);
img = reader.read(0);

这将跳过源数据中 4 行/列中的 3 行。

于 2009-11-25T17:15:18.663 回答
0

如果你在安装了imagemagick二进制文件的 Linux 服务器上运行,你可以只做一个Runtime.getRuntime.exec()on /usr/bin/convert. 只要确保你读/写唯一的名字(你可以File.createTempFile()用来确保)。

于 2009-11-25T17:53:48.357 回答