Вопрос № 32418: Добрый день!
Вот такая трабла у меня: не знаю как сохранить изображение в файл из объекта CImage... Метод Save, конечно есть, но один из его параметров (тип сохраняемого файла), задается константой, которую компилятор не узнает! Чего делать,...
Вопрос № 32.418
Добрый день!
Вот такая трабла у меня: не знаю как сохранить изображение в файл из объекта CImage... Метод Save, конечно есть, но один из его параметров (тип сохраняемого файла), задается константой, которую компилятор не узнает! Чего делать, куда бечь?
Отвечает: Лучников Юрий Владимирович
Здравствуйте, Юрицын Андрей Андреевич!
Microsoft Visual Studio .NET у меня не установлен, но путь решения вопроса стандартен - нужно читать во встроенном хелпе описание объекта CImage.
Отвечает: estiGi
Здравствуйте, Юрицын Андрей Андреевич!
Да, действительно есть такая кака. Есть два варианта решения проблемы - правильный и тоже работающий :))
Дело в том, что эти константы определены в пространстве GDI+, который и использует класс CImage. Если у тебя нет этой библиотеки, то естессно ты их не подключишь. Хотя... если у тебя нет бибилиотеки GDI+, то класс CImage работать не будет, потому он строится на ней
Правильный вариант -
#include "atlimage.h"
#include "gdiplus.h" // подключать в общем то не обязательно в данном случае
В МСДН описаны только 4 формата, но можешь попробовать все эти, должны тоже работать -
ImageFormatGIF,
ImageFormatBMP,
ImageFormatEMF,
ImageFormatWMF,
ImageFormatJPEG,
ImageFormatPNG,
ImageFormatTIFF,
ImageFormatIcon
Работающий вариант -
img.Save ("c:image.bmp");
т.е. можно не указывать формат, достаточно корректного расширения я указанного файла.
Ответ отправил: estiGi (статус: 10-ый класс)
Отправлен: 30.12.2005, 14:42 Оценка за ответ: 5 Комментарий оценки: Спасибо, Ваш совет помог мне. Однако (вот мистика!) ну никак не хочет он признавать ImageFormat`ы как известные и объявленные в прострастве GDIPlus. Работает только если не указывать идентификатора вообще.