给下面的方法指定一下路径 ,旧文件名称 ,新文件名称,n 改变倍数就可以完成更改图片大小
复制代码 代码如下:
package com.qq.client.tools;
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;
public class JpgChange {
// path 路径 ,旧文件名称 ,新文件名称,n 改变倍数
public void changeImage(String path, String oldimg, String newimg, int n) {
try {
File file = new File(path + oldimg);
Image img = ImageIO.read(file);
// 构造Image对象
int wideth = img.getWidth(null); // 得到源图宽
int height = img.getHeight(null); // 得到源图长
BufferedImage tag = new BufferedImage(n * wideth, n * height,
BufferedImage.TYPE_INT_RGB);
tag.getGraphics().drawImage(img, 0, 0, n * wideth, n * height, null);
FileOutputStream out = new FileOutputStream(path + newimg);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
encoder.encode(tag); // 近JPEG编码
out.close();
} catch (IOException e) {
System.out.println("处理文件出现异常");
e.printStackTrace();
}
}
public static void main(String[] args) {
JpgChange jc = new JpgChange();
jc.changeImage("E:", "1.bmp", "2.bmp", 3);
}
}