我一直在javax.imageio.ImageIO中使用ImageIO.read()和ImageIO.write()方法来读取和写入图像,我发现一些图像的颜色变得奇怪.
即使我改变我的代码除了只读取图像并编写它们(使用jpeg,png,gif)之外什么都不做,所有这些新图像都有同样的问题.
我是否需要在ImageIO.read/write方法之前/之后添加任何其他代码?
这是我使用的代码:
File f = new File("obw.jpg");
BufferedImage bi = ImageIO.read(f);
FileOutputStream fos2 = new FileOutputStream("obw2.jpg");
ImageIO.write(bi, "JPG", fos2);
FileOutputStream fos3 = new FileOutputStream("obw3.gif");
ImageIO.write(bi, "GIF", fos3);
FileOutputStream fos4 = new FileOutputStream("obw4.png");
ImageIO.write(bi, "PNG", fos4);
Run Code Online (Sandbox Code Playgroud)
我的环境:
java version "1.6.0_35"
MacOSX 10.8.2
Run Code Online (Sandbox Code Playgroud)
原始图片:

读写后的图像之一:

我正在参与两个项目,这两个项目都使用私有maven存储库(使用nexus)。由于他们都使用自己的第3方库,因此我想为每个项目设置相应的镜像。幸运的是,我可以自由编辑project1的pom.xml。
有什么方法可以注入一些变量或设置,以便我的 ~/.m2/settings.xml 使用mirror1作为project1,并将mirror2作为默认值(对于project2)?
嗯..我查了很多stackoverflow问题和答案,但我是maven的新手,我无法理解并在我的项目中采用这些答案。