как наложить другую картинку на анимацию?

SteelBear

Новичок
как наложить другую картинку на анимацию?

когдато мне понадобилось наложить один гиф на другой и я делал так:

$image_id = imageCreateFromGIF("newcart2.gif");
$bgimage = imageCreateFromGIF("backcart1");
imagecopymerge($bgimage, $image_id, 0, 0, 0, 0, 101, 80, 30);

Header( "Content-type: image/gif");
ImageGIF($bgimage);
ImageDestroy($image_id);
ImageDestroy($bgimage);

теперь мне понадобилось наложить статическую картинку на анимированную гифку. как это можно сделать, желательно не подключая нестандартные модули к php?

потому что если применять этот способ то анимированная картинка становится статической.
 

SteelBear

Новичок
я так понял стандартными средствами не поборось, а что лучше тогда gd2 или imagemagick ?
 

nikit87

Новичок
ImageMagick это пакет утилит для никсов. Может производить любые действия с картинками. Вплодь до создания анимаций гифовских. Должен быть у тя, если freebsd стоит не самый первый))

Ну а gd2 и так понятно. Тебе решать что лучше. Покопайся в инете, прочитай про каждый. Никто не хочет дублировать то что в любом мане по этим вещам найти можно.
 

SteelBear

Новичок
подскажите, может ктото всетаки накладывал на анимированный gif другую картинку.
Отсылки к gd2 и т.д. ничего не дают. нет там таких команд или я не нашел . я прошу всего лишь одну команду, которая это делает.

в gd есть только imagecopymerge которую я пользую, а в gd2 я так понял gdImageCopyMerge но она не работет с гифами вообще (если кто знает, gd после версии 1.6 перестало поддерживать gif.)

в общем люди, только если вы сами чтото такое делали ,ответте пожалуйста КАК.
 

Tor

Новичок
hint: imagecopymerge тоже не работает с гифами
как и большинство графических функций
работают они с ресурсом

если кто знает, gd после версии 1.6 перестало поддерживать gif
если кто не знает, лицензия на гиф уже бесплатна и gd(1|2) с ней работает

-~{}~ 14.07.05 17:38:

11/01/04: gd 2.0.32 has been released. gd 2.0.29 added animated GIF writing support

07/21/04: gd 2.0.28 has been released. gd 2.0.28 restores support for reading and writing GIF images

взято с http://www.boutell.com/gd/
 

SiMM

Новичок
> gd2 умеет работать с анимированными гифами
Может месье предоставит список функций php_gd2, которые с ними работают?
 

SiMM

Новичок
> читай выше
Может месье всё же соблаговолит ткнуть носом?
PS: я ещё раз заостряю внимание - речь идёт о модуле к php.
 

young

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

Напиши мне приватом в следующий понедельник, ок?
 

Tor

Новичок
SiMM
только из уважения к кол-ву сообщений:

11/01/04: gd 2.0.32 has been released. gd 2.0.29 added animated GIF writing support

http://www.boutell.com/gd/
 

defence

Деклассированный элемент
function echosmallpic($imgsave, $imagefile, $imagesmall) {

$imagefile="pics/pic.gif";

$imgsave="save/image_save.gif";

$imagesmall="pics/pic_over.gif";

$img = imagecreatefromgif($imagefile);

// Если изображение создано
if ($img)
{

// копируем на него другое.
$img_sm = imagecreatefromgif($imagesmall);
// Определяем размеры копируемого изображения
$size = getimagesize($imagesmall);
$w = $size[0];
$h = $size[1];
// Определяем координаты
$coord = getimagesize($imagefile);
// Ось "OX"
$x = $coord[0]-$size[0];
// Ось "OY"
$y = $coord[1]-$size[1];
// Копируем одно изображение ($img_sm) на другое ($img)
$result = imagecopy($img, $img_sm, $x, $y, 0, 0, $w, $h);
if (!$result)
{
echo "Ошибка копирования изображения";
exit();
}
// Выводим изображение на экран

imagegif($img, $imgsave);
echo "<img src=".$imgsave." border=0>";
imagedestroy($img);

}
}

Рабочий
 

SteelBear

Новичок
2defence: да спасибо код, но то что ты написал я написал еще в первом письме и более коротко. но твоя конструкция как и моя не работает с анимацией. попробуй :)

нужно чтобы анимационный гиф после накладывания другого гифа на него оставался анимированным, только еще и с накладкой.
 

SteelBear

Новичок
2lucas : может я вообще торможу но вы уж простите, ну неработает и с этим скриптом анимация. НЕРАБОТАЕТ. скажите а вообще ктонибудь пробовал сам это делать?

вот уважаемые гуру PHP , может ктонибудь потратит драгоценные пару минут и попробует сам сделать так чтобы на один гиф (АНИМИРОВАННЫЙ) наложить другой не анимированный и чтобы в результате на экран выдался первый анимированный гиф только с нашлепкой вторым?
 

lucas

Guest
Библиотека GDx != php_gdx.dll.

Модуль не поддерживает всю функциональность "обврапленной" библиотеки.

SteelBear

См. imagemagick.
 
Сверху