【发布时间】:2014-01-18 13:15:50
【问题描述】:
我正在处理 java 中的图像,我在本地磁盘中读取和写入图像。我的问题是在编写图像时,我正在失去我阅读的实际图像的质量。它将图像文件大小的质量从 6.19MB(实际图像大小)文件降低到 1.22MB(使用 ImageIO.write() 写入,这是一个巨大的损失。当我使用时如何防止这种损失
ImageIO.write(image, "jpg", os);
用于编写图像。 请记住,我在这里不需要任何压缩。只是我想读取图像并以相同的质量和相同的文件大小写入相同的图像。我也试过了,
writer.write(null, new IIOImage(image, null, null), param);
但它会花费我更多的执行时间并执行压缩过程。
请帮我解决这个问题。有没有机会写无损图像质量使用
ImageIO.write(image, "jpg", os);
还是其他方式?
提前谢谢...!
【问题讨论】:
-
JPG 是有损压缩,this 可能对你有帮助。
-
Tried Byte[] 但它增加了太大的文件大小:-(
标签: java image-processing bufferedimage javax.imageio