当我阅读某些 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,但其中的颜色也很平淡(因此假设颜色信息未正确读取)。