Skip to content
A pure javascript BMP encoder and decoder for node.js
Branch: master
Clone or download
Latest commit db2c466 Jul 19, 2018


A pure javascript Bmp encoder and decoder for node.js

Supports all bits decoding(1,4,8,16,24,32) and encoding with 24bit.


npm install bmp-js

How to use

Decode BMP

var bmp = require("bmp-js");
var bmpBuffer = fs.readFileSync('bit24.bmp');
var bmpData = bmp.decode(bmpBuffer);

bmpData has all properties, including:

  1. fileSize
  2. reserved
  3. offset
  4. headerSize
  5. width
  6. height
  7. planes
  8. bitPP
  9. compress
  10. rawSize
  11. hr
  12. vr
  13. colors
  14. importantColors
  15. palette
  16. data a. This is a byte array b. The bytes are ordered as follows: ABGR (alpha, blue, green, red) c. 4 bytes represent 1 pixel

Encode RGB

var bmp = require("bmp-js");
var fs = require("fs");
var bmpData = {
    data, //Buffer
    width, //Number
    height //Number
var rawData = bmp.encode(bmpData); //defaults to no compression


You can use for free with MIT License

You can’t perform that action at this time.