用JAVA將大圖片文件轉換出小的縮略圖文件,要求使用JDK1.4,
大家可以將這段程序代碼改為JavaBean,以便在WEB環境中使用,
轉換出的小縮略圖效果不錯!
import javax.imageio.ImageIO;
import javax.imageio.IIOException;
import java.awt.image.BufferedImage;
import java.awt.Image;
import java.io.File;
import java.awt.image.AffineTransformOp;
import java.awt.geom.AffineTransform;
public class imgTest {
public static void main (String argv[]) {
try {
File fi = new File("c:/image2.jpg"); //大圖文件
File fo = new File("c:/imgTest.jpg"); //將要轉換出的小圖文件
int nw = 100;
AffineTransform transform = new AffineTransform();
BufferedImage bis = ImageIO.read(fi);
int w = bis.getWidth();
int h = bis.getHeight();
double scale = (double)w/h;
int nh = (nw*h)/w ;
double sx = (double)nw/w;
double sy = (double)nh/h;
transform.setToScale(sx,sy);
System.out.println(w + " " +h);
AffineTransformOp ato = new AffineTransformOp(transform,null);
BufferedImage bid = new BufferedImage(nw,nh,BufferedImage.TYPE_3BYTE_BGR);
ato.filter(bis,bid);
ImageIO.write(bid,"jpeg",fo);
} catch(Exception e) {
e.printStackTrace();
}
}
}
|
|