Gif

  • Автор темы Titanic
  • Дата начала
T

Titanic

Привет всем. Нужно разобрать по запчастям графический файл формата gif, для того чтоб в дальнейшем уметь производить некие действия( напр. перерисовка с заменой цвета ). Интересует заголовок со всеми полями именно в виде кода (напр. typedef struct {...} и т. д ). Почитал информацию о графических фоматах в часности об самом примитивном формате BMP и составил пару алгоритмов для действий над фалом(и). Но по поводу формата GIF возникли непонятки, при этом инете нету понятного(для меня :)) описания, хотя про BMP и другим попадаются хорошие статьи...
 
G

grigsoft

А с чего ты решил что упакованный формат будет таким же простым как bmp?
Вот спецификация:
Вот класс который читает\пишет, среди прочего и gif:
Думаю на СР и классы попроще найдутся.
 
T

Titanic

А с чего ты решил что упакованный формат будет таким же простым как bmp?
Что-то мне подсказывает что упакованный формат имеет тот -же принцип, ну или во многом похож на простой, отличие только в том что данные закодированы, а после декодирования они станоаятся еще более похожи на простой формат. Первым делом мне нужна структура заголовка с размерами и именами полей.
Вот спецификация:
По этой спецификации мне трудно составить структуру заголовка, т.к ттам не указаны размеры(типы) полей
 
G

grigsoft

Ну посмотри еще вот тут:
Там обычно есть исходники.
 
G

garrymax

Усложнение задачи: Если это С Builder, то любой компонент, который работает с GIF's может выдать и палитру и други составные, которые можно изменять. Тем более, что при обработки изображения все равно потребуется работать с BitMap образом, а потом обратно его в LZV, плюс шапку - это лучше отдать таким компонентам, которые и распакуют и запакуют его. Кстати, в этих компонентах есть заголовочные файлы, которые описывают структуру файла.

Но если очень, то есть книга В. Ю. Романов "Популярные форматы файлов для хранения графических изображений" - проверял, работает. Там как раз примеры на Си. Книга старая, но я еще видел ее в продаже.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!