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

GDI+ и сохранение Bitmap* - C++

Восстановить пароль Регистрация
 
ANDROSMIT
0 / 0 / 0
Регистрация: 19.11.2013
Сообщений: 2
25.12.2013, 20:34     GDI+ и сохранение Bitmap* #1
Всем привет! Недавно начал использовать GDI+, так что приходится задавать тупые вопросы

Есть некий метод, который загружает из файла битмап, вырезает из него прямоугольник и должен сохранить в файл. Вот тут проблема: NewBitMap.Clone(); возвращает указатель на Bitmap, а сохранять можно только сам Bitmap.
Вопрос: Как сохранить вырезанное изображение?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void IEGDIp::CutRectangle()
{
    // Create a Bitmap object from a JPEG file.
    Bitmap NewBitMap(L"BACKGRND.bmp");
    Bitmap* Bitmap;
    // Clone a portion of the bitmap.
    Bitmap = NewBitMap.Clone(200, 200, 500, 500, PixelFormatDontCare);
 
    CLSID pngClsid;
    GetEncoderClsid(L"image/bmp", &pngClsid);
 
    Bitmap.Save(L"Save_BITMAP", &pngClsid, NULL); //не работает!
    
}
ЗЫ: 2 часа поисков ничего не дали
За помощь с меня огромное СПАСИБО!

Добавлено через 19 часов 36 минут
ААА... Вротмненоги!!1

Только сейчас узнал что к функции указателя можно подобраться используя "->"
Вот правильный код:

C++
1
2
3
4
5
6
7
8
9
10
11
12
void IEGDIp::CutRectangle()
{
    Bitmap NewBitMap(L"BACKGRND.bmp");
    Bitmap* CutBitmap;
 
    CutBitmap = NewBitMap.Clone(200, 200, 500, 500, PixelFormatDontCare);
 
    CLSID pngClsid;
    GetEncoderClsid(L"image/bmp", &pngClsid); //http://msdn.microsoft.com/en-us/library/ms533843.aspx
 
    CutBitmap->Save(L"Save_BITMAP.bmp", &pngClsid, NULL); //Проблемное место :)
}
Огромное спасибо, ANDRO, за помощь!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.12.2013, 20:34     GDI+ и сохранение Bitmap*
Посмотрите здесь:

GDI C++
C++ GDI в WinAPI
C++ Перезаписать память начиная с указателя Bitmap[1] элементами начиная с указателя Bitmap[0]
C++ Освоение gdi+
Исходники GDI C++
GDI || DirectX C++
Анимация в GDI C++
C++ Литература по GDI+

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 01:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru