JDK1.4只有一个对JPG的图片进行编码的类,但是也可以用作处理png等类型的图片,但是对BMP的图片进行处理,会报nullpointor的错误。
JDK1.5除了可以处理jpg,gif,png的图片以外,已经支持BMP的图片处理。
以下代码可以将给定的上述图片类型按照给定的大小进行缩放:
File oldFile=new File(from);//源图片
Image img=ImageIO.read(oldFile);
BufferedImage newImage=new BufferedImage(img.getWidth(null),img.getHeight(null),BufferedImage.TYPE_INT_RGB);
newImage.getGraphics().drawImage(img,0,0,img.getWidth(null),img.getHeight(null),null);
OutputStream out=new FileOutputStream(new File(to));//目的图片
JPEGImageEncoder encoder=JPEGCodec.createJPEGEncoder(out);
encoder.encode(newImage);
out.close();