使用PHP,是否可以将gif动画与jpg合并并保留gif动画?


With PHP, is it possible to merge an animated gif with a jpg and retain the gifs animation?

使用PHP (GD或ImageMagick)我想合并一个动画gif与jpg和保留gif的动画,产品是一个动画gif。

换句话说,我有一个500px x 30px的gif动画,需要放在一个500px x 500px的jpg上,最终的结果是一个单独的gif动画。

所以再一次,有人知道是否有可能合并一个gif动画与jpg和保留gif动画?

Look Imagick::animateImages方法,gomadurai示例:

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

如果您只使用一个gif,您可以将其分开保存在一个文件夹中,然后使用简单的GD操作(此处的注释之一)合并分隔的图像,然后使用上面的代码创建新的gif。