Работа с GIF. "Манипуляции" в памяти

Тема в разделе "WASM.WIN32", создана пользователем TruthLover, 5 дек 2009.

  1. TruthLover

    TruthLover New Member

    Публикаций:
    0
    Регистрация:
    23 окт 2009
    Сообщения:
    6
    Добрый день.

    Можно ли и как в памяти манипулировать глубиной цвета.
    (имею ввиду такой простой пример - выбираем путь к GIF-файлу, он отображается в окне нашей программы, а сбоку есть ряд радиобаттонов [1-8], чтобы выбирать глубину цвета для рисунка.

    Я плохо ориентируюсь в формате GIF. Это верно, что он может показывать только 8 разных глубин цветов ?

    [​IMG]

    Буду благодарен за ответы.
     
  2. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    вполне можно перекодировать на лету
     
  3. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    Вопрос в заголовке очень криво сформулирован. GIF это "кодированный" формат рисунка. Для его вывода на экран нужна программа - аппаратно он не выводится. Реально выводятся пиксели из видео-памяти. При выводе можно многим манипулировать, но к GIF это никакого отношения не имеет.
    Есть какая-то модификация формата GIF, там вроде больше цветов можно задавать.
    Можно конечно сделать программу, которая на лету будет выводить меняющийся в памяти GIF, но нафига ?
     
  4. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    Последний вопрос к чему : если вы собирались съэкономить на "распаковке", то не получится - изменение палитры/глубины в "памяти GIF" никак не отразится на картинке. А если переносить изменения только "в цвета", то их без всякого GIF можно делать.
     
  5. TruthLover

    TruthLover New Member

    Публикаций:
    0
    Регистрация:
    23 окт 2009
    Сообщения:
    6
    1) открыл и записал GIF-файл в память.
    2) теперь мне нужно вывести его в окно программы, НО вывести в одной из палитр цветов (так как спецификация формата позволяет). КАК это сделать ?
    GDI+ ?
     
  6. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    Я про GDI+ только сегодня прочел, но если я правильно понял, то на основе GIF создается bitmap и все манипуляции делаются с ним. Про палитру не понял - в GIF она одна вроде.
    Ты же пойми - формат GIF создавался во времена 256 цветов и все что он поддерживает умерло уже(в том числе и палитры). Ну кроме анимированных GIF, т.к. по объему и качеству они превосходят все остальные видео-форматы, но только для мини-роликов.
     
  7. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    Просто ты путаешь формат GIF, как формат файла, и формат GIF c полной спецификацией устаревших возможностей визуализации.