@mardokvk
Я junior-программист, мой профиль С#, изучаю С++.

Bitmap, hBitmap как загрузить сохраненный bmp?

Я сохранил картинку в формате bmp. Картинку я сохранил так же через Bitmap. И теперь хочу подгрузить ее и получить Bitmap со всеми вытекающими. С возможностью получить цвет пикселей через GetPixel. Некоторые попытки не привели к желаемому результату. Подскажите варианты пожалуйста. Заранее спасибо!
  • Вопрос задан
  • 113 просмотров
Решения вопроса 1
wataru
@wataru Куратор тега C++
Разработчик на С++, экс-олимпиадник.
Надо воспользоваться Gdiplus::Bitmap. Он умеет читать из файла.
Дальше из него можно получить HBITMAP, если надо. А можно и дальше Gdiplus::Bitmap передавать.

HBITMAP LoadHbitmapFromFile(const std::wstring& filename)
{
    Gdiplus::Bitmap* bitmap = Gdiplus::Bitmap::FromFile(filename.c_str(), false);
    HBITMAP result = NULL;
    if (bitmap)
    {
        bitmap->GetHBITMAP(Gdiplus::Color(255, 255, 255), &result);
        delete bitmap;
    }
    return result;
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@mardokvk Автор вопроса
Я junior-программист, мой профиль С#, изучаю С++.
Я просто не прописал этот код перед тем как запускать чтение файла.
GdiplusStartupInput gdiplusStartupInput;
ULONG_PTR gdiplusToken;
GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы