Доброго времени суток, дамы и господа!
Собственно, сабж, возможен ли ресайз анимированных gif-ов средствами php и, если да, то как?
(библиотеки давать не надо - интересна сама технология)
Технология осложняется тем, что в кадрах могут быть прозрачные участки, через которые видны предыдущие кадры, для экономии пикселей, если они с прошлого кадра не менялись.
Я думаю, это тот случай, когда можно воспользоваться библиотекой, ибо curl, unzip, convert и пр. уже придумали и отладили до нас, что их снова писать?
теория простая.
берем каждый кадр, уменьшаем пропорционально, учитывая антиалиасинг и относительное положение кадра в общей картинке.
плюс уменьшаем, разумеется, управляющие величины.
как вариант вижу:
читаем гиф - получаем кадры (в виде массива пикселов)
применяем к каждому массиву изменение размера и антиалиасинг (алгоритмы можно найти в гугле)
сжимаем обратно и собираем gif файл