Popular Posts
SwiXml SwiX ml , is a small GUI generating engine for Java applications and applets. Graphical User Interfaces are described in XML documents that ... SQL Server T-SQL Cheat Sheet DECLARE and SET Varibales DECLARE @Mojo int SET @Mojo = 1 SELECT @Mojo = Column FROM Table WHERE id=1 IF / ELSE IF / ELSE S... jQuery UI, adjust font size .ui-widget { font-family: Verdana, Arial, sans-serif; font-size: 10pt; }
Blog Archive
Stats
Resize image using Java
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package apptraining;

import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;

/**
 *
 * @author BruceTsai
 */
public class ImageResizer {

    public static void doit(String soureFile, String targetFile, double percentage) throws IOException {
        BufferedImage image = ImageIO.read(new File(soureFile));
        System.out.println(String.format("原始檔寬度 : %d , 原始檔高度 : %d", image.getWidth(), image.getHeight()));
        int[] size = new int[]{(int) (image.getWidth() * percentage), (int) (image.getHeight() * percentage)};
        System.out.println(String.format("轉換後寬度 : %d , 轉換後高度 : %d", size[0], size[1]));
        BufferedImage target = new BufferedImage(size[0], size[1], image.getType());
        Graphics2D graphic = target.createGraphics();
        graphic.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
        graphic.drawImage(image, 0, 0, size[0], size[1], null);
        ImageIO.write(target, "jpg", new File(targetFile));
    }
}