使用java自带的包可以对jpg图片实现按指定尺寸缩放, import java.io.File; import java.io.FileOutputStream; import java.awt.Image; import java.awt.image.BufferedImage; import com.sun.image.codec.jpeg.JPEGCodec; import com.sun.image.codec.jpeg.JPEGImageEncoder; public class Img{ /** * 根据给定的源图文件名和目标图片文件名,以及要缩小的目标尺寸,将图片缩小后输出 * @param srcImgFileName String 源文件名,包括文件路径 * @param targetImgFileName String 目标文件名,包括文件路径 * @param imgWidth int 目标图片宽 * @param imgHeight int 目标图片高 * @throws Exception */ public void getNewImage(String srcImgFileName, String targetImgFileName, int imgWidth, int imgHeight) throws Exception{ File _file = new File(srcImgFileName);//读入文件 Image src = javax.imageio.ImageIO.read(_file);//构造Image对象 BufferedImage tag = new BufferedImage(imgWidth,imgHeight,BufferedImage.TYPE_INT_RGB); //绘制缩小后的图 tag.getGraphics().drawImage(src,0,0,imgWidth,imgHeight,null); //输出到文件流 FileOutputStream out=new FileOutputStream(targetImgFileName); JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out); encoder.encode(tag);//近JPEG编码 out.close(); } /** * 运行主程序 * @param args */ public static void main(String[] args) { String imgName = null;//存放图片 if (args.length >= 1) { imgName = args[0]; } else { System.err.println("Input imgFileName!"); System.exit (1); } try { String targetImgName = "targetImg.jpg";//转换后的图片 new Img().getNewImage(imgName, targetImgName, 1024/5, 768/5); //缩放要求 } catch (Exception ex) { ex.printStackTrace(); } } }
Java处理图片缩放
最新推荐文章于 2024-04-26 16:59:49 发布