用JAVA將大圖片文件轉換出小的縮略圖文件 - 中國WEB開發者網絡 (http://www.webasp.net) -- 技術教程 (http://www.webasp.net/article/) --- 用JAVA將大圖片文件轉換出小的縮略圖文件 (http://www.webasp.net/article/18/17030.htm) |
| -- 作者:未知 -- 發佈日期: 2005-03-16 |
| 用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(); } } } |
| webasp.net |