代码之家  ›  专栏  ›  技术社区  ›  Koerr

我能从BuffereImage得到原始图像吗?

  •  0
  • Koerr  · 技术社区  · 15 年前

    BufferedImage image = ImageIO.read(new URL("http://www.google.com/intl/en_ALL/images/srpr/logo1w.png"));
    

    现在,我只知道用什么

    ImageIO.write(image,"jpg", file); //or ImageIO.write(image,"png", file);
    

    将此BuffereImage保存到文件,但此文件是ZIPed,不等于原始图像大小。

    2 回复  |  直到 15 年前
        1
  •  2
  •   Peter Tillemans    15 年前

    简言之:没有。

    Java将图像转换为内部表示,并在读写时转换文件。

    最好的办法是读取字节数组中的文件(或临时文件),然后从中创建图像。当保存文件时,返回到原始的bytearray或tempfile。

        2
  •  0
  •   Denys Kniazhev-Support Ukraine    15 年前
    public static Image toImage(BufferedImage bufferedImage) { 
        return Toolkit.getDefaultToolkit().createImage(bufferedImage.getSource()); 
    } 
    
    推荐文章