C ++ Windows JPEG для Bytestream - PullRequest
       24

C ++ Windows JPEG для Bytestream

1 голос
/ 13 декабря 2011

У меня есть HENHMETAFILE.Я хочу создать из него JPEG с заданной шириной и высотой и отправить его на какой-нибудь сервер.Для этого мне нужно получить байтовый поток JPEG и размер потока в байтах.

В настоящее время я делаю это с CImage::Save, чтобы сохранить метафайл на диск в формате JPEG, а затем прочитать созданный файл.файл, чтобы получить мой поток, а затем удалить JPEG.Это, очевидно, довольно неловкий подход.

У кого-нибудь есть подсказка, как пропустить процесс сохранения образа на диск?Я бы предпочел не использовать внешние библиотеки, если это возможно.Я использую MSVC ++ 2010.

1 Ответ

3 голосов
/ 13 декабря 2011

CImage :: Save () имеет вторую перегрузку для сохранения в IStream .

В этой статье показано, как использовать сжатие изображений в памяти: http://www.codeproject.com/KB/GDI-plus/MemImage.aspx

Вместо этого используется GDI + Image, но этого должно быть достаточно для начала работы.

...