我用photoshop处理了一张图片,半透明,我存储为.png格式,原始图片是200*100像素,我现在想把它按比例缩放为100*50的大小,我用下面的程序试了一下,是可以做,但执行出来的图片不能再用photoshop打开。那为老兄研究过java的图片处理,能否指点一二。

解决方案 »

  1.   

    import javax.imageio.ImageIO; 
    import javax.imageio.IIOException; 
    import java.awt.image.BufferedImage; 
    import java.awt.Image; 
    import java.io.File; 
    import java.awt.image.AffineTransformOp; 
    import java.awt.geom.AffineTransform; public class imgTest{ 
    public static void main (String argv[]) { 
    try{ 
    File fi = new File("me.jpg"); //大图文件 
    File fo = new File("me2.jpg"); //将要转换出的小图文件 
    int nw = 100; 
    AffineTransform transform = new AffineTransform(); 
    BufferedImage bis = ImageIO.read(fi); 
    int w = bis.getWidth(); 
    int h = bis.getHeight(); 
    double scale = (double)w/h; 
    int nh = (nw*h)/w ; 
    double sx = (double)nw/w; 
    double sy = (double)nh/h; 
    transform.setToScale(sx,sy); 
    System.out.println(w + " " +h); 
    AffineTransformOp ato = new AffineTransformOp(transform,null); 
    BufferedImage bid = new BufferedImage(nw,nh,BufferedImage.TYPE_3BYTE_BGR); 
    ato.filter(bis,bid); 
    ImageIO.write(bid,"jpeg",fo); 
    } catch(Exception e) { 
    e.printStackTrace(); 


    }
      

  2.   

    我对于java处理png图片的看法是:虽然可以保存为png格式,但是它和ps作出来的png格式的图片有所差别,我以前做了一个用java修改png图片的程序,发觉修改好了ps尽管也能打开,但是在程序中用鼠标拖动这张图片时候非常的卡,而原来没有修改的时候鼠标拖动非常的顺。这个程序我先看看,不过不一定行啊
      

  3.   

    我找到一个网址,上面介绍了缩放图片的代码,你去看看吧
    http://blog.csdn.net/fightplane/archive/2005/01/14/253200.aspx