Java中的BufferedImage转换为BMP

8
我有一个BufferedImage对象,我想将其编码为BMP格式并保存到磁盘上。
我该怎么做?
在JPEG中,这是可以的:
BufferedImage img; //here is an image ready to be recorded into the hard disk
FileOutputStream fout = new FileOutputStream("image.jpg");

JPEGImageEncoder jencoder = JPEGCodec.createJPEGEncoder(fout);
JPEGEncodeParam enParam = jencoder.getDefaultJPEGEncodeParam(img);

enParam.setQuality(1.0F, true);
jencoder.setJPEGEncodeParam(enParam);
jencoder.encode(img);

fout.close();
2个回答

11

使用ImageIO -

ImageIO.write(img, "BMP", new File("filename.bmp"))

2
请确保BufferedImageBufferedImage.TYPE_INT_RGB而不是BufferedImage.TYPE_INT_ARGB - c0der

7

应该做些类似这样的事情:

ImageIO.write(image, "BMP", new File("filename.bmp"));

其中,image是您想要编码的BufferedImage。


1
确保BufferedImage的类型为BufferedImage.TYPE_INT_RGB而不是BufferedImage.TYPE_INT_ARGB - c0der

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接