代码改变世界

java图片处理工具之-ImageMagick+jmagick(二)

2017-06-11 10:24  tlnshuju  阅读(414)  评论(0编辑  收藏  举报

简单的图片处理測试类:

public class ImageUtil {
static{
          System.setProperty("jmagick.systemclassloader","no"); //必须
    }

     /**  
     * 压缩图片  
     */  
    public  void createimage(String filepath,String topath, int width, int height) {   
          ImageInfo info = null;     //载入图片
          MagickImage image = null;   
          MagickImage scaled = null; 
          Dimension dim=null;
          try {   
                 info = new ImageInfo(filepath); 
                 image = new MagickImage(info);
                 
                 dim = image.getDimension();
                 double w = dim.getWidth();
                 double h = dim.getHeight();
                 int toHeight = (int)(h*width/w);//按宽度比例缩放
                 
                 scaled = image.scaleImage(width, toHeight );// 小图片文件的大小. 
                 scaled.setFileName(topath+width+height+".jpg"); //设置图片名称,必须得有保存图片路径
                 scaled.writeImage(info); 
           } catch (Exception e) {   
                          e.printStackTrace();   
            } finally {   
                           if(image!=null)
        {
                    image.destroyImages();
        }
           if (scaled != null) {   
                          scaled.destroyImages();   
           }   
            }
      } 
    
      public static void main(String[] args){
            String filepath="d:/xxxx.jpg";
            String topath="d:/xxxxx/";
            int width=400;
            int height=553;
            ImageUtil image=new ImageUtil();
            image.createimage(filepath, topath, width, height);
      }