Помогите мне нужно считать палитру бмп файла, файл черно-белый 8 бит на пиксель 256 цветов
я сделал но у меня числа получаются типо 345973632, эт нормально или я делаю что-то не то?
Ммм ну смотри сам каковы значения основных гамм
C++ |
1
2
3
4
5
6
7
8
9
10
11
12
13
| #include <windows.h>
#include <iostream>
using namespace std;
int main()
{
cout<<"RED : "<<RGB(255,0,0)<<endl;
cout<<"GRN : "<<RGB(0,255,0)<<endl;
cout<<"BLU : "<<RGB(0,0,255)<<endl;
cout<<"WHT : "<<RGB(255,255,255)<<endl;
cout<<"BLK : "<<RGB(0,0,0)<<endl;
return 0;
} |
|
Думаю что нет, и предположу что читаешь BMP-шку полагая что данные идут как триады а там они идук как тетрады
C |
1
2
3
4
5
6
7
| typedef struct tagRGBQUAD {
BYTE rgbBlue;
BYTE rgbGreen;
BYTE rgbRed;
BYTE rgbReserved;
} RGBQUAD;
typedef RGBQUAD FAR* LPRGBQUAD; |
|
Т.е ты мешаешь к палитре ещё байты BYTE rgbReserved;