Добрый вечер всем. Мне один любитель апи функций задал вопрос каким образом загружаются картинки в обьект image, в разных языках программирования, стандартными средствами он брезгует и любит все переписовать на апи, + страшный любитель авангардных алгоритмов. Я ему говорю посмотри под отладчиком, постав бряки где надо, смотри список экспортируемых функций. А он говорит, а как насчет параметров? Я говорю так документация есть, а он говорить пол-нета прерыл и не нашел таких функций. Как делать? Каким образом работать с форматами типа jpeg, tiff, и другими?
Просто GDI позволяет нативно работать только с BITMAP. Для работы с другими, более продвинутыми форматами есть библиотека GDI Plus, которая может работать и в windows 98, если ее таскать с собой. В XP она интегрированна.
Предлагаю модуль для загрузки JPG и GIF. Вообще не оптимизирован (это было моё первое творение на асме - прошу ногами не бить), однако работает. Добавлено: перед вызовом этих функций нужно вызвать CoInitialize, а после того как они отработали и больше вызываться не будут - CoUninitialize. Всю эту красотищу можно использовать, только подключив к проге ole32.inc и olepro32.inc
Спасибо всем громадное за советы исходники, линки, передам все это добро колеге пускай юзает, а заодно буду сам знать где в случае чего самому искать.
В SDK есть отдел GDI+ , а там подразде GDI+ Flat API, так вот там черным по белому написанно, то все классы GDI+ обертка вокруг этих функций. Для интереса выполните l2inc GdiPlus.lib
rodger Могу только сказать что плохо искал. Библиотек полно, в том числе и сама винда умеет мног чего грузить, и не обязательно через GDI+.
[оффтоп] Формулировка вопроса напоминает сюжеты фильмов в которых некто приходит к психиатру, мол "у моего друга проблема...". Дальше становится понятно, что этот "друг" и есть он сам.
Уж поверте на слово, работой с графикой на таком уровне не занимаюсь, и вряд ли когда буду, а мой товарищ фанат низкоуровневых фишек при работе с графикой, а я Слава Богу ни раздвоением личности, ни комплексами не полноценности не страдаю. Если мне что-то нужно по работе я говорю в форуме прямым текстом мол начальство поднапрягло, если есть авангардные идеи, тоже говорю прямо. Так что вот такой расклад.