Форум программистов, компьютерный форум CyberForum.ru

C++

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 5.00
Ikasu
Сообщений: n/a
#1

Класс по обработке bmp-файлов - C++

25.03.2009, 19:43. Просмотров 1164. Ответов 2
Метки нет (Все метки)

добрый вечер!

проблема в чтении структур в файл. когда писала программу по обработке файла не в классе, никаких проблем не было. теперь тот же код использую в функции класса, и вот здесь, например

ifstream inBMP(name,ios::in| ios::binary);
inBMP.read((char*)&bmfh,sizeof(BITMAPFILEHEADER));
inBMP.read((char*)&bmih,sizeof(BITMAPINFOHEADER));
cout << bmih.biHeight << " " << bmih.biWidth << endl;

выводятся ширина и высота неимоверных размеров %)
и с записью, похоже тоже косяки.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.03.2009, 19:43     Класс по обработке bmp-файлов
Посмотрите здесь:

Разработка и отладка алгоритмов и программ по созданию и обработке файлов - C++
помоги решить программку пожалуйста(на С):-[ Дан файл, содержащий целые числа. Вычислить сумму всех чисел, расположенных между...

Создание bmp файлов на С++ - C++
Поделитесь пожалуйста информацией о том как создавать bmp файл на языке С++, а точнее создать файл bmp содержащий текст. Заранее благодарен.

Разработка и отладка алгоритмов и программ с применением по созданию и обработке файлов - Visual C++
#include &quot;lr_11.h&quot; #include &lt;fstream&gt; #include &lt;iostream&gt; #include&lt;conio.h&gt; #include&lt;string&gt; using namespace std; struct...

Программа магазин-склад. Нужно исправить ошибки по обработке файлов - C++ Builder
Программа магазин-склад ну плохо сохраняет пожалуйста исправте недороботки и ошибки что бы файлы работали правильно и все сохранялось...

Программа с изменением BMP файлов - C++
Написать программу, формирующую по исходному BMP файлу новый BMP файл, содержащий самый яркий квадрат заданного размера N. N задать в...

Считываение 16-битных bmp файлов - Visual C++
Начал изучать програмирование на Visual Studio C++. Задача в слудущем: Есть 16-битный bmp файл отенки серого(можно сказать чернобелый)....

Считывание и запись .bmp файлов - C++
Здравствуйте. Помогите, пожалуйста, разобраться почему не работает сохранение bmp файла. Открываю 1 файл, загружаю его и все данные...

Поиск всех .bmp файлов в системе - C++ WinAPI
Приветствую всех. Ребята, помогите пожалуйста организовать поиск в локальных дисках по маске *.bmp. Ниже приведенный код собирает bmp...

Как в Visual C++ организовать вывод bmp файлов - Visual C++
Как в Visual C++ организовать вывод bmp файлов. Спасибо.

Программа для чтения и просмотра BMP-файлов - Visual C++
Здравствуйте, необходимо написать программу для чтения и просмотра BMP-файлов. Предусмотреть возможность работы с файлами, использующими...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Deicider
96 / 52 / 1
Регистрация: 18.03.2009
Сообщений: 273
26.03.2009, 09:33     Класс по обработке bmp-файлов #2
Ikasu, Приведите пожалуйста побольше кода )) проблема скорее всего содержится выше этого куска.
Ikasu
Сообщений: n/a
26.03.2009, 16:49     Класс по обработке bmp-файлов #3
#include <iostream.h>
#include <fstream.h>


typedef unsigned long DWORD;
typedef unsigned int WORD;
typedef signed long LONG;
typedef unsigned char BYTE;

struct BITMAPFILEHEADER
{
DWORD bfSize;
WORD bfReserved1;
WORD bfReserved2;
DWORD bfOffBits;

};

struct BITMAPINFOHEADER
{
DWORD biSize;
LONG biWidth;
LONG biHeight;
WORD biPlanes;
WORD biBitCount;
DWORD biCompression;
DWORD biSizeImage;
LONG biXPelsPerMeter;
LONG biYPelsPerMeter;
DWORD biClrUsed;
DWORD biClrImportant;
};

struct RGBTriple
{
BYTE rgbBlue;
BYTE rgbGreen;
BYTE rgbRed;
};


struct RGBQuad
{
BYTE rgbBlue;
BYTE rgbGreen;
BYTE rgbRed;
BYTE rgbReserved;
};



class BMP
{
public:
BITMAPFILEHEADER bmfh;
BITMAPINFOHEADER bmih;
RGBTriple rgbt;
RGBQuad rgbq;
char *name;

BMP(char *name1)
{name = new char;
strcpy(name, name1);
cout << bmih.biHeight << " " << bmih.biWidth << endl;
ifstream inBMP(name,ios::in| ios::binary);
inBMP.read((char*)&bmfh,sizeof(BITMAPFILEHEADER));
inBMP.read((char*)&bmih,sizeof(BITMAPINFOHEADER));
cout << bmih.biHeight << " " << bmih.biWidth << endl;
cout << "Constructor has called" << endl;
inBMP.close();
}

~BMP() {cout << "Destructor has called" << endl;};
void change_brightness();
void invert();

};
Yandex
Объявления
26.03.2009, 16:49     Класс по обработке bmp-файлов
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru