Чтение bmp файла
От: gradik Россия  
Дата: 07.11.05 15:31
Оценка:
Я прочитала файл bmp.

BITMAPFILEHEADER fh;
BITMAPINFOHEADER ih;
RGBQUAD rgbQ;
BITMAPINFO info;

void main(){
  int nread;
  int fd;
  int bitsize;      /* Size of bitmap */
  int infosize;     /* Size of header information */

  fd = open("256_1.bmp", O_RDONLY);
  nread = read(fd, (void*)&fh, sizeof(BITMAPFILEHEADER));

  infosize = fh.bfOffBits - sizeof(BITMAPFILEHEADER);
  BITMAPINFO info2;
 
  nread = read(fd, (void*)&info2, infosize);

  if ((bitsize = info2.bmiHeader.biSizeImage) == 0)
    bitsize = (info2.bmiHeader.biWidth *
               info2.bmiHeader.biBitCount + 7) / 8 *
      abs(info2.bmiHeader.biHeight);
  
 char bits[bitsize]; 

  nread = read(fd, bits, bitsize);
  
  for(int i = 0; i < 1; i++)
    cout<<&(bits[i])<<endl;
 
  int cl = close(fd);
}


при распечатывании массива bits[0] в консоли получается моя картинка, но какими-то символами.
Как можно понять, какой символ соответствует какому цвету и правильно ли я считала файл?
Буду очень благодарна, если кто-то сможет мне помочь

08.11.05 09:32: Перенесено модератором из 'C/C++. Прикладные вопросы' — Павел Кузнецов
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.