我正在寻找一种在java中压缩和解压缩BMP图像的方法。
我找到了一种使用javax.imageio的简单方法,如下面的tutorial。
使用以下两个类(ImageWriter,ImageWriteParam),但提供的示例只是压缩图像。
我正在寻找的是使用相同的类和相同的机制来解压缩我的压缩图像"我从提供的例子中得到了。
无论如何都有相同的机制吗?
任何其他压缩BMP的解决方案也是受欢迎的。
先谢谢。
答案 0 :(得分:1)
使用ImageIO在Java中读取和写入图像的最简单方法是直接使用read
和write
静态方法。
读:
BufferedImage image = ImageIO.read(new File("input.bmp"));
写:
BufferedImage image = ...; // from disk or created in memory, etc
if (!ImageIO.write(image, "BMP", new File("output.bmp"))) {
// TODO: Handle not written case
}
分别使用ImageReader
和ImageReadParam
以及ImageWriter
和ImageWriteParam
(如教程中所示),可以更好地控制要解码的图像部分,大小或区域,或格式化功能,如压缩类型,编码质量等,如果需要。