![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| maxipub |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 517 Регистрация: 22.10.2009 Репутация: нет Всего: 1 |
Как можно узнать, является ли некий gif файл анимированным? Желательно, наиболее компактным и простым путем.
|
|||
|
||||
| maxipub |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 517 Регистрация: 22.10.2009 Репутация: нет Всего: 1 |
Это настолько сложно?
|
|||
|
||||
| Ипатьев |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
Я думаю, да.
Найти в гугле описание формата, подумать, какой из признаков однозначно укажет на анимированность гифа и прочитать его из файла. Это далеко не всем под силу. |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
вбил в google "php gif frames count"
первая же ссылка в списке ведет в ман, где в первом же комментарии к imagecreatefromgif описываются даже несколько функций для определения анимированности. |
|||
|
||||
| icewind |
|
||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 393 Регистрация: 11.4.2009 Где: Ростов-на-Дону Репутация: 20 Всего: 20 |
Не все так глухо
Идем в гугль, находим спецификацию формата здесь или здесь, читаем и понимаем что анимированный гиф просто состоит из последовательности кадров(статических гифок). Далее смотрим что у них может быть общего... А общие у них заголовочные байты. Соответственно для определения наличия в изображении нескольких кадров нужно найти несколько заголовков. А именно:
статическая последовательность в 4 байта (начало заголовка). Далее идут 4 байта, которые могут варьироваться и, наконец, закрывающие заголовок два байта
Таким образом для определения можно написать что-то типа этого(писал на коленке... Можно сделать и по-другому)
skyboy, вот я велосипедист Это сообщение отредактировал(а) icewind - 27.10.2009, 10:33 -------------------- ![]() |
||||||
|
|||||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
||||
|
||||
| maxipub |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 517 Регистрация: 22.10.2009 Репутация: нет Всего: 1 |
благодарю за помощь!
Ипатьев, если вы такие умные, что тут делаете? |
|||
|
||||
| Ипатьев |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
Делюсь знаниями.
|
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |