3

I have a 24-bit bmp file that I want to get the rgb values for the pixels using Jimp for node. If I open the image in GIMP and examine pixel 0,0 the rgb values are r: 45, g: 203, b: 203. However, if I use Jimp and the following code:

Jimp.read(fileToRead)
          .then(image => {
            console.log(Jimp.intToRGBA(image.getPixelColor(0,0)))
          })
          .catch(err => {
            console.log(err);
          })

I get { r: 173, g: 200, b: 150, a: 255 }

By eye, r: 45, g: 203, b: 203 is the correct color. So what am I doing wrong? Do I need to use some option to tell Jimp it's 24-bit? Can Jimp read 24-bit? Internally it's using node mod bmp-js which supposedly can decode 24 bit. Am I missing some basic knowledge about bmp format?

Thanks.

Davout1806
  • 51
  • 1
  • 3

1 Answers1

0

I would write the actual image from which you are trying to extract the color info. Jimp has a write() method. For example:

Jimp.read(...).write('/tmp/out.png');

Then open out.png and inspect by yourself

develCuy
  • 576
  • 5
  • 14