小编J_U*_*ser的帖子

使用 ImageIO.write() 方法时如何防止图像质量损失?

我正在处理 Java 中的图像,我在本地磁盘中读取和写入图像。我的问题是在写图像时我失去了我阅读的实际图像的质量。它通过图像文件大小将质量从 6.19MB(实际图像大小)文件降低到 1.22MB(使用 ImageIO.write() 写入,这是巨大的损失。当我使用时如何防止这种损失

 ImageIO.write(image, "jpg", os);
Run Code Online (Sandbox Code Playgroud)

用于写入图像。请记住,我在这里不需要任何压缩。只是我想读取图像并以相同的质量和相同的文件大小写入相同的图像。我也试过,

writer.write(null, new IIOImage(image, null, null), param);
Run Code Online (Sandbox Code Playgroud)

但它需要更多的执行时间并进行压缩过程。

请帮我解决这个问题。有没有机会写无损图像质量使用

 ImageIO.write(image, "jpg", os);
Run Code Online (Sandbox Code Playgroud)

或任何其他方式?

提前致谢...!

java bufferedimage image-processing javax.imageio

3
推荐指数
1
解决办法
5265
查看次数