縮放圖片
/**
* 縮放圖片
*
* @param srcImageFile 圖片來源
* @param result 縮放後圖片儲存位置
* @param scale 縮放比例
* @param flag 縮放選擇:true 放大; false 縮小;
*/
public static void scale(String srcImageFile, String result, int scale, boolean flag) {
try {
BufferedImage src = ImageIO.read(new File(srcImageFile));//讀取來源
int width = src.getWidth();//取得圖寬
int height = src.getHeight();//取得圖長
if (flag) {
//放大
width = width * scale;
height = height * scale;
} else {
//縮小
width = width / scale;
height = height / scale;
}
Image image = src.getScaledInstance(width, height, Image.SCALE_DEFAULT);
BufferedImage tag = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
Graphics g = tag.getGraphics();
g.drawImage(image, 0, 0, null);//繪製縮小後的圖
g.dispose();
ImageIO.write(tag, "JPEG", new File(result));//輸出
} catch (IOException e) {
e.printStackTrace();
}
}