In this article, I will be writing about BMP images and how to read them in Java.
What is BMP?
A BMP, bitmap image file, is a file format which stores images. It supports 2d images in monochrome (one colour) and colour. The BMP file format supports 2 file extensions including .bmp and .dib (Device Independant Bitmap). It was primarily designed for Window platforms although it also works on other platforms.
BMP images are popular and can be read by JDeli, ImageIO and JAI. JDeli can read and write a very wide range of image formats. Here is the full list on Image file conversions supported.
How to read BMP images in Java?
Here are examples of how BMP images can be read in Java.
File bmpFile = new File("bmpImage.bmp"); BufferedImage image = ImageIO.read(bmpFile);
RenderedImage image = JAI.create("fileload", "test1.bmp");
You can easily replace ImageIO (and get much better support for BMP files) by just changing ImageIO.read to JDeli.read:
//Read Image (can also be OutputStream or byte array) File bmpFile = new File("bmpImage.bmp"); BufferedImage image = JDeli.read(bmpFile);
Or you can use the JDeli BmpDecoder directly:
BmpDecoder decoder = new BmpDecoder(); BufferedImage image = decoder.read(rawImageBytes);