Рисовать WICBitmap в окно?

у меня есть WICBitmap который содержит изображение в моей программе MFC. Есть ли способ нарисовать это растровое изображение в контексте устройства?

void DrawBitmap(IWICBitmapSource source, HDC targetDC, int X, int Y, int cx, int cy)
{
//source: The Bitmap to draw
//TargetDC: The HDC to draw onto (e.g. a printer or screen DC)
//X,Y: The location on the DC to draw the bitmap

}

0

Решение

В MSDN есть несколько примеров, показывающих, как отображать растровое изображение WIC с использованием, например, GDI, GDI +, Direct2D и т. Д.


Microsoft предоставляет WIC Image Viewer с использованием образца GDI (GitHub зеркало)

Основная идея:

  • перерабатывать IWicBitmapSource в стандартную винду БИТОВАЯ КАРТА (CreateDibSectionFromBitmapSource)
  • рисовать, используя БИТОВАЯ КАРТА используя ваши стандартные инструменты
2

Другие решения

Файл можно редактировать отдельно как файл bmp, и после того, как вы сможете загрузить объект WIC, как вы можете видеть в Как загрузить растровое изображение из файла.

-1

По вопросам рекламы [email protected]