图片的简单缩放

               前不久五一到周庄游玩,照相机照的照片超大,每一个均超过3M,不能上传QQ空间,由于自己写一个简简单单的图片缩放的代码,通过java程序缩放使相册小于3M,然后上传到QQ空间。O(∩_∩)O哈哈~

 

package com.easyway.commons.ispace.dev.io;

import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

import javax.imageio.ImageIO;

import com.sun.image.codec.jpeg.JPEGCodec;
import com.sun.image.codec.jpeg.JPEGImageEncoder;
/**
 * 图片缩放
 * @author longgangbai
 * @date 2010-5-20
 * @version 1.0
 * @since JDK6.0
 */
public class FileImageUtils {
	public static void reduceImg(File srcfile, String imgdist, int widthdist,   
	        int heightdist) {   
	    try {   
	        if (!srcfile.exists()) {   
	            return;   
	        }   
	        Image src = javax.imageio.ImageIO.read(srcfile);   
	        BufferedImage tag= new BufferedImage((int) widthdist, (int) heightdist,   
	                BufferedImage.TYPE_INT_RGB);   
	        tag.getGraphics().drawImage(src.getScaledInstance(widthdist, heightdist,  Image.SCALE_SMOOTH), 0, 0,  null);   
	        ///tag.getGraphics().drawImage(src.getScaledInstance(widthdist, heightdist,  Image.SCALE_AREA_AVERAGING), 0, 0,  null);   
	        FileOutputStream out = new FileOutputStream(imgdist);   
	        JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);   
	        encoder.encode(tag);   
	        out.close();   
	  
	    } catch (IOException ex) {   
	        ex.printStackTrace();   
	    }   
	}  
	
	public static void main(String[] args) {
		File file=new File("E:\\images\\101MSDCF\\");
		File[] files=file.listFiles();
		for (File file2 : files) {
			reduceImg(file2,file2.getParent()+"//_"+file2.getName(),800,600);
		}
	}
}

 

你可能感兴趣的:(java,qq,sun)