BufferedImage bi_src = ...; ImageIO.write(new ScaleFilter(100,100), "jpeg", dest); //源代码片段来自云代码http://yuncode.net public class ScaleFilter extends AbstractBufferedImageOp { private int width; private int height; /** * Construct a ScaleFilter. */ public ScaleFilter() { this(32, 32); } /** * Construct a ScaleFilter. * @param width the width to scale to * @param height the height to scale to */ public ScaleFilter( int width, int height ) { this.width = width; this.height = height; } public BufferedImage filter( BufferedImage src, BufferedImage dst ) { if ( dst == null ) { ColorModel dstCM = src.getColorModel(); dst = new BufferedImage(dstCM, dstCM.createCompatibleWritableRaster( width, height ), dstCM.isAlphaPremultiplied(), null); } Image scaleImage = src.getScaledInstance( width, height, Image.SCALE_AREA_AVERAGING ); Graphics2D g = dst.createGraphics(); g.drawImage( scaleImage, 0, 0, width, height, null ); g.dispose(); return dst; } public String toString() { return "Distort/Scale"; } }//源代码片段来自云代码http://yuncode.net