2011-12-02 15 views
6

PHP'yi (GD veya ImageMagick) Kullanarak bir jpg ile animasyonlu bir gif birleştirmek ve gif, animasyonlu bir gif olan animasyonunu korumak istiyorum. Başka bir deyişle, 500px x 30px boyutunda bir animasyonlu gif var ve bir jpg'nin 500px x 500px değerinde olması gerekiyor, sonuçta tek bir animasyonlu gif oluyor.PHP ile, bir jpg ile animasyonlu bir gif birleştirmek ve gifs animasyonunu korumak mümkün mü?

Yine, bir jpg ile animasyonlu bir gif birleştirmek ve gifs animasyonunu korumak mümkün olup olmadığını herkes biliyor mu?

+1

Bunun dinamik olarak yapılması gerekiyor mu yoksa bu bir zaman meselesi mi? –

+7

Bu, tüm kareleri animasyonunuzdan ayırmanızı gerektirir, ardından her bir çerçevenin üstüne JPG'yi uygular ve bundan sonra GIF'inizi yeniden oluşturmanız gerekir. – jValdron

+1

Bunu yapmak için ne amaçla ihtiyacınız var? Bunun hangi işlevi yerine getirmesi gerekiyor? – Spags

cevap

1

Bak Imagick::animateImages method, gomadurai örnek:

Yalnızca bir gif kullanırsanız
<?php 

$multiTIFF = new Imagick(); 

$mytifspath = "./man"; // your image directory 

$files = scandir($mytifspath); 

//print_r($files); 

/*foreach($files as $f) 
{*/ 

for($i=2;$i<6;$i++) 
{ 
    echo $files[$i]; 

    echo "<br>"; 
    $auxIMG = new Imagick(); 
    $auxIMG->readImage($mytifspath."/".$files[$i]); 

    $multiTIFF->addImage($auxIMG); 
} 

//file multi.TIF 
$multiTIFF->writeImages('multi423432.gif', true); // combine all image into one single image 

//files multi-0.TIF, multi-1.TIF, ... 
$multiTIFF->writeImages('multi.gif', false); 

?> 

, daha sonra, bir klasörde splitted kaydetmek basit GD manipülasyon ile ayrılmış görüntüleri birleştirebilirsiniz (yorum here biri), ve yeni Gif'i oluşturmak için yukarıdaki kodu kullandıktan sonra.

+0

Windows için Imagick uzantısı dll nereden alınır? Php için –

+0

@dan_l http://www.php.net/manual/en/imagick.requirements.php –