api функции для графики

Тема в разделе "WASM.WIN32", создана пользователем rodger, 18 май 2008.

  1. rodger

    rodger New Member

    Публикаций:
    0
    Регистрация:
    10 ноя 2007
    Сообщения:
    363
    Добрый вечер всем. Мне один любитель апи функций задал вопрос каким образом загружаются картинки в обьект image, в разных языках программирования, стандартными средствами он брезгует и любит все переписовать на апи, + страшный любитель авангардных алгоритмов. Я ему говорю посмотри под отладчиком, постав бряки где надо, смотри список экспортируемых функций. А он говорит, а как насчет параметров? Я говорю так документация есть, а он говорить пол-нета прерыл и не нашел таких функций. Как делать? Каким образом работать с форматами типа jpeg, tiff, и другими?
     
  2. Osen

    Osen Рие

    Публикаций:
    0
    Регистрация:
    5 апр 2008
    Сообщения:
    283
    Адрес:
    Париж
    Просто GDI позволяет нативно работать только с BITMAP. Для работы с другими, более продвинутыми форматами есть библиотека GDI Plus, которая может работать и в windows 98, если ее таскать с собой. В XP она интегрированна.
     
  3. rodger

    rodger New Member

    Публикаций:
    0
    Регистрация:
    10 ноя 2007
    Сообщения:
    363
    А есть документация на эту библиотеку, описание функций с параметрами?
     
  4. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    есть. MSDN
     
  5. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    там не совсем функции, там ООП обернуто вокруг обычных функций.
     
  6. DEEP

    DEEP Андрей

    Публикаций:
    0
    Регистрация:
    27 апр 2008
    Сообщения:
    491
    Адрес:
    г. Владимир
    Предлагаю модуль для загрузки JPG и GIF. Вообще не оптимизирован (это было моё первое творение на асме - прошу ногами не бить), однако работает.

    Добавлено: перед вызовом этих функций нужно вызвать CoInitialize, а после того как они отработали и больше вызываться не будут - CoUninitialize. Всю эту красотищу можно использовать, только подключив к проге ole32.inc и olepro32.inc
     
  7. _basmp_

    _basmp_ New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2005
    Сообщения:
    2.939
    rodger
    Есть такая опенсорсная библиотека 'freeimage'. Думаю она вас полностью удовлетворит.
     
  8. rodger

    rodger New Member

    Публикаций:
    0
    Регистрация:
    10 ноя 2007
    Сообщения:
    363
    Спасибо всем громадное за советы исходники, линки, передам все это добро колеге пускай юзает, а заодно буду сам знать где в случае чего самому искать.
     
  9. zaqer

    zaqer New Member

    Публикаций:
    0
    Регистрация:
    10 мар 2008
    Сообщения:
    22
    В SDK есть отдел GDI+ , а там подразде GDI+ Flat API, так вот там черным по белому написанно, то все классы
    GDI+ обертка вокруг этих функций. Для интереса выполните l2inc GdiPlus.lib
     
  10. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    rodger
    Могу только сказать что плохо искал. Библиотек полно, в том числе и сама винда умеет мног чего грузить, и не обязательно через GDI+.
     
  11. HuXTUS

    HuXTUS New Member

    Публикаций:
    0
    Регистрация:
    8 янв 2007
    Сообщения:
    240
    [оффтоп] Формулировка вопроса напоминает сюжеты фильмов в которых некто приходит к психиатру, мол "у моего друга проблема...". Дальше становится понятно, что этот "друг" и есть он сам.
     
  12. rodger

    rodger New Member

    Публикаций:
    0
    Регистрация:
    10 ноя 2007
    Сообщения:
    363
    Уж поверте на слово, работой с графикой на таком уровне не занимаюсь, и вряд ли когда буду, а мой товарищ фанат низкоуровневых фишек при работе с графикой, а я Слава Богу ни раздвоением личности, ни комплексами не полноценности не страдаю. Если мне что-то нужно по работе я говорю в форуме прямым текстом мол начальство поднапрягло, если есть авангардные идеи, тоже говорю прямо. Так что вот такой расклад.