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

Rya*_*lap 6 php gd imagemagick animated-gif

使用PHP(GD或ImageMagick)我想将动画gif与jpg合并并保留gif的动画,该产品是动画gif.

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

再说一次,有人知道是否有可能将动画gif与jpg合并并保留GIF动画?

Pau*_* H. 1

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

?>
Run Code Online (Sandbox Code Playgroud)

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