Bon, j'ai trouvé des fonctions directement dans Windows pour ce que je cherche, mon code donne la valeur RGB d'un pixel d'un bitmap. J'ai juste un problème, j'ai fait un bitmap dont tous les pixels ont comme valeur RGB (50, 100, 150) et ma fonction me renvoit 9856050. Comment convertir ça en (50, 100, 150)?
Voilà le code:
#include <windows.h>
#include <iostream>
using namespace std;
///////////////////////////////////////////////////////////////////
int main()
{
HDC hdcImage;
HBITMAP hbm;
char szBitmap[] = "bitmap.bmp";
int x = 1024;
int y = 768;
long pixelvalue = 0;
hbm = (HBITMAP) LoadImage(GetModuleHandle(NULL), szBitmap, IMAGE_BITMAP, x,
y, LR_CREATEDIBSECTION);
if (hbm == NULL)
hbm = (HBITMAP) LoadImage(NULL, szBitmap, IMAGE_BITMAP, x, y,
LR_LOADFROMFILE | LR_CREATEDIBSECTION);
hdcImage = CreateCompatibleDC(NULL);
SelectObject(hdcImage, hbm);
pixelvalue = GetPixel(hdcImage, 1, 1);
cout << pixelvalue << endl;
while (1)
{
}
return 0;
}