2011-12-02 19 views
6

Utilizzo di PHP (GD o ImageMagick) Voglio unire una gif animata con un jpg e conservare l'animazione della gif, essendo il prodotto una gif animata.Con PHP, è possibile unire una gif animata con un jpg e mantenere l'animazione gif?

In altre parole, ho una gif animata che è di 500 px x 30 px e deve essere posizionata sopra un jpg che è 500 px x 500 px, il risultato finale è una singola gif animata.

Quindi, ancora una volta, qualcuno sa se è possibile unire una gif animata con un jpg e mantenere l'animazione gif?

+1

Questo deve essere fatto dinamicamente o è una cosa una volta? –

+7

Questo richiederà sicuramente di separare tutti i fotogrammi dall'animazione, quindi applicare il JPG sopra ciascun fotogramma, dopodiché dovrai ricostruire la GIF. – jValdron

+1

Per quale scopo hai bisogno di fare questo? Che funzione ha bisogno di essere in grado di servire? – Spags

risposta

1

sguardo Imagick::animateImages method, gomadurai campione:

<?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); 

?> 

Se si utilizza un solo gif, è possibile salvarlo spacco su una cartella, quindi unire le immagini separate con una semplice manipolazione GD (uno dei commenti here), e dopo utilizza il codice sopra per creare la nuova Gif.

+0

dove trovare l'estensione dll Imagick per Windows? –

+0

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

Problemi correlati