![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
botnet |
|
|||
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 13.5.2007 Репутация: -1 Всего: -1 |
Господа!
Товарищи! Проблема с сохранением в BMP. Описание: Есть 24-битный BMP файл. Требуеться элементарно сохранить его под другим названиме, предварительно например увеличив яркость картинки на 10%. Помогите пожайлуста, вдруг у кого есть код рабочий. Только не говорите, что мол почитай что такое BMP файл, сядь и напиши программу. Я знаю и структуру BMP файла, и примерно понимаю как с ним работать. Но возникли несколько проблем.(Например каким то образом структура BMPHEADER имеет нечетный размер)... и т.д. Если у кого-то есть любой исходник по этой теме - буддте так пожайлуста добры - скиньте его сюда |
|||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 12 Всего: 459 |
botnet, воспользуйтесь поиском. Действительно на моей памяти уже было несколько рабочих решений.
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
Есть довольно простое решение - возьми либу, понимающую этот формат, например DevIL или FreeImage, и ее средствами сделай то, что тебе надо.
|
|||
|
||||
botnet |
|
|||
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 13.5.2007 Репутация: -1 Всего: -1 |
Вас всех прекрасно понял. Тогда несколько уточнений.
1) Нельзя использовать WinAPI и т.д. либы 2) Я прекрасно понимаю нежелание отвечать на глупые вопросы, которые уже задавались. Но... http://forum.vingrad.ru/forum/topic-152088...Cbmp/index.html По этой ссылке и еще по 10ку подобных я смотрел всё что там написанно. И везде чего-то не хватает. Возникают какие то глупые проблемы. Народ, может вместо того, чтобы говорить почему мне не нужно помогать, вы возьмёте и поможете? Тогда я буду вам очень признателен |
|||
|
||||
botnet |
|
|||
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 13.5.2007 Репутация: -1 Всего: -1 |
)))Мда...
говорить вы ребята конечно мастера. А как человеку просто помочь, не выёживаясь при этом. Так сразу пас |
|||
|
||||
nerezus |
|
|||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: 3 Всего: 43 |
botnet, давай я тебе помогу, без проблем.
$200 |
|||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 12 Всего: 459 |
Очень даже можем, но тогда эту тему следует перенести в "Центр помощи". В проф разделах не решают задачи за вас, а только помогают в решении. В центр помощи решают задачи целиком. Потому и негодование. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
jonie |
|
||||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 15 Всего: 118 |
для каждой компоненты (R,G,B) сделать
только альфаканал не надо трогать... -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
||||||
|
|||||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 12 Всего: 459 |
Это сообщение отредактировал(а) Alexeis - 5.6.2007, 10:21 -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
jonie |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 15 Всего: 118 |
и у меня этот код вообще вылетает со Stream Read Error.... -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 12 Всего: 459 |
jonie, нет это просто универсальный метод определения длинны строки.
(PBIH->biWidth * PBIH->biBitCount + 7) / 8 - вот это учет выравнивания битов на границу байтов. А , + 3) / 4 * 4; Это выравнивание строки на границу двойного слова. jonie, скинь свой файлик, писал по памяти, может чего и забыл ![]() Добавлено через 6 минут и 35 секунд А ну да верно будет так перед fs1->ReadBuffer(buf, bufsize); установить начало чтения растра по BITMAPFILEHEADER т.е. добавить строчку fs1->Position = BMH.bfOffBits; Тогда полный код должен получиться
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |