我有一个 BufferedImage 实例:(仅一个示例)
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);
将此 BufferedImage 保存到文件中,但此文件是 ZIPed,不等于原始图像大小。
我可以从 BufferedImage 实例获取原始图像 ByteArray 或 OutputStream 吗?
最佳答案
简而言之:不。
Java 将图像转换为内部表示形式,并在读写时转换文件。
您最好的选择是读取字节数组中的文件(或临时文件),然后从那里创建图像。保存文件时,返回原始字节数组或临时文件。
关于java - 我可以从 BufferedImage 获取原始图像吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3554112/