Java中似乎有提供缩放图片的接口和方法,但不是很清楚,各位大大可否指教一二?

解决方案 »

  1.   

    BufferedImage srcBuffImage=null;
    Image dstImage = null;try{
      srcBuffImage = ImageIO.read(Test.class.getResourceAsStream("flower.bmp"));
    }
    catch(Exception e){
      e.printStackTrace();
    }ReplicateScaleFilter filter = new ReplicateScaleFilter(w, h);
    FilteredImageSource fis = new FilteredImageSource(srcBuffImage.getSource(),filter);
    dstImage = Toolkit.getDefaultToolkit().createImage(fis);
      

  2.   

    楼上说的明白,以上只是JDK自带的ReplicateScaleFilter过滤器,功能简单,从美工的角度看,这属于实时缩放,即按照给定比例,丢失像素,另外还有alpha缩放法,即在你丢失的像素前后各取一个像素,并且与丢失像素进行算法处理,比如进行高斯模糊算法还有如果你是想将BMP图像在你的画面上绘制出来的话,那么直接使用Graphics的drawImage方法既可实现