我读取某些JPG文件时,颜色会变得平淡。这里有一个简单的例子,它读取了一个jpg文件,并将相同的图像写入另一个文件。
import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;
public class JPegReadTest {
public static void main(String[] args) {
if (args.length == 2) {
try {
BufferedImage src = ImageIO.read(new File(args[0]));
ImageIO.write(src, "jpg", new File(args[1]));
} catch (Exception e) {
e.printStackTrace();
}
} else {
System.err.println("Usage: java JPegReadTest src dest");
}
}
}
如果你尝试使用例如http://www.flickr.com/photos/visualpanic/233508614/sizes/l/这样的图片,目标图片的颜色与源文件不同。为什么会这样?如何修复?
我也尝试将图像保存为png格式,但其中的颜色也很平淡(因此推测颜色信息未被正确读取)。