禁用Java ImageIO色度子采样

时间:2013-01-04 01:09:46

标签: java image javax.imageio jai subsampling

我尝试使用ImageIO将BufferedImage保存为JPEG。但即使使用100质量保存,我也会因色度SubSampling而遭受质量损失。

我已成功修复此问题,方法是恢复旧的JAI库并明确将水平和垂直子采样设置为1。 然而,关键要求是我将图像保存为渐进式,而JAI似乎并不支持。

有没有办法使用较新的ImageWriter禁用子采样?

提前致谢

如果可能,我想避免使用ImageMagick

1 个答案:

答案 0 :(得分:2)

阅读JPEG Metadata Format Specification and Usage Notes似乎表明,通过使用自定义IIOMetadata编写图像可以实现这一目标。

在互联网上搜索会显示https://codereview.appspot.com/3082041/patch/204004/210007,它似乎以这种方式使用ImageIO。

我没有尝试过,也不知道它是否真的有效。