forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Библиотеки (http://forum.boolean.name/forumdisplay.php?f=124)
-   -   Lib_anigif: поддержка GIF-анимации. (http://forum.boolean.name/showthread.php?t=5543)

ViNT 16.01.2009 22:50

Ответ: Lib_anigif: поддержка GIF-анимации.
 
Цитата:

Сообщение от m1kc. (Сообщение 94954)
БагЪ! При загрузке из ФС первое изображение грузится нормально, все последующие - через раз. То играет в 2 раза быстрее, то просто зависает. Проверено на нескольких SE, на эмуле, как ни странно, все ОК.

В какой версии?

m1kc. 16.01.2009 22:55

Ответ: Lib_anigif: поддержка GIF-анимации.
 
Цитата:

В какой версии?
Третьей.

ViNT 16.01.2009 22:58

Ответ: Lib_anigif: поддержка GIF-анимации.
 
Буду разбираться.

m1kc. 08.02.2009 22:52

Lib_anigif: поддержка GIF-анимации.
 
ViNT, слушай, можешь сделать по-быстрому функцию для определения количества кадров в анимации? Оно ж у тебя все равно там определяется, только не отдается.

ViNT 08.02.2009 23:13

Ответ: Lib_anigif: поддержка GIF-анимации.
 
Цитата:

Сообщение от m1kc. (Сообщение 97335)
ViNT, слушай, можешь сделать по-быстрому функцию для определения количества кадров в анимации? Оно ж у тебя все равно там определяется, только не отдается.

В интерфейсе GifImage, на котором основана библиотека нет функции определения числа кадров. Библиотека работает через класс GifFrame, а он сам определяет, является ли кадр последним (думаю, по тому же принципу, что и класс Enumeration - число объектов вообще заранее не определяется, просто проверяется, является ли текущий элемент последним). Так что, думаю, добавить функцию не получится.

m1kc. 09.02.2009 00:24

Lib_anigif: поддержка GIF-анимации.
 
А как насчет, допустим, объявить переменную i, при каждом новом кадре увеличивать ее значение на единицу, а когда достигнут последний, запомнить? Вот в этот кусок это можно вставить:

PHP код:

while((img gif.nextImage()) != null) {
frm = new GifFrame(imggif.getDelay() * 10);
if(
last == null)
gifFrame frm;
else
last.next frm;
last frm;



Doctor Drive 21.03.2009 02:36

Ответ: Lib_anigif: поддержка GIF-анимации.
 
а как сравнить картинки? типа
image2 = image1... ?

так^ не работает. Через библу с байтами тоже не получается. Дайте примерчик пожалуйста.

ViNT 21.03.2009 13:41

Ответ: Lib_anigif: поддержка GIF-анимации.
 
Ну, можно, напимер, попробовать преобразовать оба изображения в строки и сравнить их

Doctor Drive 21.03.2009 23:24

Ответ: Lib_anigif: поддержка GIF-анимации.
 
как? вот загрузил либой anigif3 картинки a:image и b:image. как их в строку переобразовать?

Doctor Drive 21.03.2009 23:33

Ответ: Lib_anigif: поддержка GIF-анимации.
 
как? вот загрузил либой anigif3 картинки a:image и b:image. как их в строку переобразовать?

ViNT 22.03.2009 13:37

Ответ: Lib_anigif: поддержка GIF-анимации.
 
Имеется в виду сравнение анимированных gif? Тогда все сложнее, по идее, нужно синхронно загржать кадры изображений и сравнивать их, но библиотека пока может загружать только одно изображение. Как появится время, попробую сделать поддержку нескольких изображений.

Doctor Drive 22.03.2009 21:32

Ответ: Lib_anigif: поддержка GIF-анимации.
 
Да нет, мне просто надо сравнение картинки kartinko1: image и kartinko2: image

типа if kartinko1 = kartinko2 then preved

ViNT 22.03.2009 23:36

Ответ: Lib_anigif: поддержка GIF-анимации.
 
Вложений: 1
Тогда эта библиотека не нужна, она предназначена именно для воспроизведения многокадровых GIF-изображений.
Для решения данной задачи, думаю, будет достаточно загрузить оба изображения стандартными средствами, преобразовать каждое в строку и сравнить полученные строки. Правда, на счет максимального размера изображений и производительности ничего сказать не могу. Преобразовать image в строку можно прикрепленной библиотекой.

Doctor Drive 23.03.2009 01:38

Ответ: Lib_anigif: поддержка GIF-анимации.
 
ViNT, мне нужно их сравнить чтобы определить конец анимации :)
Эта ^либа^ какраз то что мне надо было. Большое спасибо!

Doctor Drive 02.10.2009 16:58

Ответ: Lib_anigif: поддержка GIF-анимации.
 
Класс GifImage никакой декопмиль из имеющихся у меня доступных не берет (с ошибками делает). Есть у кого исходнеги?


Часовой пояс GMT +4, время: 17:17.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot