保存jpg图像时,Java 1.5.0_16损坏了颜色

Cod*_*der 4 java image-processing javax.imageio

我有一个从磁盘加载的图像(存储为a BufferedImage),我在a上正确显示JPanel但是当我尝试使用下面的命令重新保存此图像时,图像以红色调保存.

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

注意!image是a BufferedImage,fileNameFile指向将以" .jpg" 结尾保存的文件名的对象.

我已经读过ImageIO早期JDK中的方法存在问题,但就我所能找到的那样,我不在其中一个版本上.我正在寻找的是一种解决这个问题而无需更新JDK的方法,但是我已经说过我仍然想知道这个问题在JDK中修复了什么(如果它确实仍然是我正在使用的JDK的一个bug ).

谢谢.

Cod*_*der 5

好的,解决了我的问题,似乎我需要将图像转换为BufferedImage.TYPE_INT_RGB由于某种原因.我认为在某些层可能无法正确处理alpha通道.