Yuriy-Khomenko / GIF_eXG

PHP script for resize gif image file with support animation and transparency
14 stars 5 forks source link

Формат файла на выходе не верный? #5

Open IamFake opened 10 years ago

IamFake commented 10 years ago

Уменьшаю гифку Вашим скриптом, тут же открываю её в ImageMagick и получаю:

unable to read extension block `/www/stock/test.gif' @ error/gif.c/ReadGIFImage/1079

Версия вашего скрипта последняя, ImageMagick 6.8.6-8 2013-11-12 Q16

Yuriy-Khomenko commented 10 years ago

Проблема только с одним файлом ? Честно говоря данный error мне мало о чем говорит. Нужно взглянуть на оригинал и выходной файл.

11.01.2014, 23:32, "Vitaliy" notifications@github.com:

Уменьшаю гифку Вашим скриптом, тут же открываю её в ImageMagick и получаю:

unable to read extension block `/www/stock/test.gif' @ error/gif.c/ReadGIFImage/1079

Версия вашего скрипта последняя, ImageMagick 6.8.6-8 2013-11-12 Q16

— Reply to this email directly or view it on GitHub.

IamFake commented 10 years ago

Большая соответственно оригинал - его кушает и имаджик и ваша либа, миниатюра уже после работы вашей либы и имажик её не признает... Покопался в исходниках функции ReadGIFImage, но это не особо помогло :) Там все дело в блоке с описанием изображений видимо, после работы вашей либы в итоговом файле этот блок начинается с 14 байта (восклицательный знак аля \x21) и за ним следом идет 15 байт - \xFF и при попытке считать 15ый - имаджик почему то валится с этой ошибкой, т.к. прочитал 0 байт...

Надеюсь тут обработка изображений не попортит ничего, проверю после опубликования, если пожуёт то выложу куда-нибудь на хостинг.

shm sss

Yuriy-Khomenko commented 10 years ago

значит так, ваш файл который ресайзился через мой скрипт даже не проигрывается в ом Windows, проверил у себя все ок. вы ресайзите только моим кодом, или уже с вашими правками ? я почитал структуру вашего отресайзеного файла и у меня есть подозрения что правки были и я даже догадываюсь где ((

12.01.2014, 00:48, "Vitaliy" notifications@github.com:

Большая соответственно оригинал - его кушает и имаджик и ваша либа, миниатюра уже после работы вашей либы и имажик её не признает... Покопался в исходниках функции ReadGIFImage, но это не особо помогло :) Там все дело в блоке с описанием изображений видимо, после работы вашей либы в итоговом файле этот блок начинается с 14 байта (восклицательный знак аля \x21) и за ним следом идет 15 байт - \xFF и при попытке считать 15ый - имаджик почему то валится с этой ошибкой, т.к. прочитал 0 байт...

Надеюсь тут обработка изображений не попортит ничего, проверю после опубликования, если пожуёт то выложу куда-нибудь на хостинг.

— Reply to this email directly or view it on GitHub.

IamFake commented 10 years ago

Доооолго ломал мозг о чем это вы. И видимо понял о чём. О "копирайте" в
конце файла... Вот вам сюрприз - по-крайней мере на моем dev-линуксе
функция iconv_strlen почему то возвращает false на вашей строке и поэтому
ваша "секретная" завершающая строка не вставляется. Т.е. я даже не убирал
ваш "копирайт" и система не работала. Заменил на mb_strlen и все
заработало. По тексту кажется что вы обиделись, но 1) вы ведь сами
выложили скрипт "AS-IS - что хотите то и делайте" 2) в опен-сурсе не
принято вкручивать в код такие вот подлянки, которые в определенных
условиях ложат работу системы, не хорошо...

On Sun, 12 Jan 2014 03:32:10 +0600, Yuriy-Khomenko
notifications@github.com wrote:

значит так, ваш файл который ресайзился через мой скрипт даже не
проигрывается в ом Windows, проверил у себя все ок. вы ресайзите только
моим кодом, или уже с вашими правками ? я почитал структуру вашего
отресайзеного файла и у меня есть подозрения что правки были и я даже
догадываюсь где ((

12.01.2014, 00:48, "Vitaliy" notifications@github.com:

Большая соответственно оригинал - его кушает и имаджик и ваша либа,
миниатюра уже после работы вашей либы и имажик её не признает...
Покопался в исходниках функции ReadGIFImage, но это не особо помогло :)
Там все дело в блоке с описанием изображений видимо, после работы вашей
либы в итоговом файле этот блок начинается с 14 байта (восклицательный
знак аля \x21) и за ним следом идет 15 байт - \xFF и при попытке
считать 15ый - имаджик почему то валится с этой ошибкой, т.к. прочитал
0 байт...

Надеюсь тут обработка изображений не попортит ничего, проверю после
опубликования, если пожуёт то выложу куда-нибудь на хостинг.

— Reply to this email directly or view it on GitHub.


Reply to this email directly or view it on GitHub: https://github.com/Yuriy-Khomenko/GIF_eXG/issues/5#issuecomment-32107763

Using Opera's revolutionary email client: http://www.opera.com/mail/

Yuriy-Khomenko commented 10 years ago
  1. да немного обиделся
  2. да вы правы, со скриптом можно делать что угодно, но хотелось чтобы и автора не забыли, а также это один из методов отслеживания/распространение работы скрипта через такой механизм
  3. не считаю что это подлянка, так небольшая уловка, для меня опен сорс отсутствие любых правил, другими словами фристайл, если что то не так я извиняюсь, другими словами без обид, ок )))
  4. mb_strlen - очень хорошее замечание, следующем коммитом также исправлю
  5. я так понял теперь все работает ?

12.01.2014, 03:38, "Vitaliy" notifications@github.com:

Доооолго ломал мозг о чем это вы. И видимо понял о чём. О "копирайте" в конце файла... Вот вам сюрприз - по-крайней мере на моем dev-линуксе функция iconv_strlen почему то возвращает false на вашей строке и поэтому ваша "секретная" завершающая строка не вставляется. Т.е. я даже не убирал ваш "копирайт" и система не работала. Заменил на mb_strlen и все заработало. По тексту кажется что вы обиделись, но 1) вы ведь сами выложили скрипт "AS-IS - что хотите то и делайте" 2) в опен-сурсе не принято вкручивать в код такие вот подлянки, которые в определенных условиях ложат работу системы, не хорошо...

On Sun, 12 Jan 2014 03:32:10 +0600, Yuriy-Khomenko notifications@github.com wrote:

значит так, ваш файл который ресайзился через мой скрипт даже не проигрывается в ом Windows, проверил у себя все ок. вы ресайзите только моим кодом, или уже с вашими правками ? я почитал структуру вашего отресайзеного файла и у меня есть подозрения что правки были и я даже догадываюсь где ((

12.01.2014, 00:48, "Vitaliy" notifications@github.com:

Большая соответственно оригинал - его кушает и имаджик и ваша либа, миниатюра уже после работы вашей либы и имажик её не признает... Покопался в исходниках функции ReadGIFImage, но это не особо помогло :) Там все дело в блоке с описанием изображений видимо, после работы вашей либы в итоговом файле этот блок начинается с 14 байта (восклицательный знак аля \x21) и за ним следом идет 15 байт - \xFF и при попытке считать 15ый - имаджик почему то валится с этой ошибкой, т.к. прочитал 0 байт...

Надеюсь тут обработка изображений не попортит ничего, проверю после опубликования, если пожуёт то выложу куда-нибудь на хостинг.

— Reply to this email directly or view it on GitHub.


Reply to this email directly or view it on GitHub: https://github.com/Yuriy-Khomenko/GIF_eXG/issues/5#issuecomment-32107763

Using Opera's revolutionary email client: http://www.opera.com/mail/ — Reply to this email directly or view it on GitHub.