2010-10-18 18 views
6

Tengo un objeto BufferedImage y quiero codificarlo en el formato BMP y guardarlo en el disco.BufferedImage a BMP en Java

¿Cómo puedo hacer esto?

En JPEG está bien:

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(); 

Respuesta

7

Uso ImageIO -

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

Esto no funciona por alguna razón. – Pavel

5

Algo como esto debería hacer:

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

donde la imagen es el BufferedImage desea codificar.