1.在项目中为了处理用户上传的图片,会对图片进行重写处理,故使用了类似下面的代码:
File src = new File("e:/img/google.jpg");
BufferedImage bi = (BufferedImage)ImageIO.read(src);
BufferedImage bi_scale = new BufferedImage(bi.getWidth(), bi.getHeight(), BufferedImage.TYPE_INT_RGB );
Graphics2D g = bi_scale.createGraphics();
g.drawImage( bi, 0, 0, bi.getWidth(), bi.getHeight(), null );
g.dispose();
FileOutputStream fos = new FileOutputStream("e:/img/google2.jpg");
ImageIO.write(bi_scale, "jpg", fos);
fos.close();
原图如下:
显然对图片质量的影响非常大,在用户体验非常高的互联网上是没法让用户接受的,于是又改用另外一种获取Image对象的方法如下