Project Nayuki


BMP I/O library (Java)

Overview

BMP I/O is a lightweight Java library for reading and writing BMP image files.

Supported reading formats and features:

  • BITMAPINFOHEADER header
  • Paletted 1-bit
  • Paletted 4-bit
  • Paletted 4-bit with RLE compression
  • Paletted 8-bit
  • Paletted 8-bit with RLE compression
  • RGB 8,8,8
  • RGBA 8,8,8,8
  • Rows in bottom-to-top order (common)
  • Rows in top-to-bottom order (uncommon)

Supported writing formats:

  • RGB 8,8,8
  • Rows in bottom-to-top order

Unsupported read features: BITMAPCOREHEADER/BITMAPCOREHEADER2/BITMAPV4HEADER/BITMAPV5HEADER header, bit fields pixel data, gamma, color space, ICC color profile.

Source code

Browse the project’s source code at GitHub: https://github.com/nayuki/BMP-IO

Or download a ZIP of all the files: https://github.com/nayuki/BMP-IO/archive/master.zip

The code is open source under the MIT License. See the readme file for details.