jdb*_*org 5 php imagemagick animated-gif
我可以在我的操作系统中轻松完成
convert -delay 1/1 -loop 0 *.gif animated.gif
Run Code Online (Sandbox Code Playgroud)
但我在PHP API中找不到如何做到这一点.没有调整大小或任何需要的东西,我只有一组需要动画的帧.
fre*_*und 15
虽然我不是PHP专家,但我知道这个问题并不太难.你想要做的是创建一个可以附加帧的Imagick对象.对于每个帧,您可以更改定时等参数.
假设您正在使用从基本Web表单上传的图像,我编写了一个基本示例,循环使用名称"image0"上传的图像,其中"0"上升到包含许多文件.您当然可以通过在固定文件名或其他方面使用相同的方法来添加图像.
$GIF = new Imagick();
$GIF->setFormat("gif");
for ($i = 0; $i < sizeof($_FILES); ++$i) {
$frame = new Imagick();
$frame->readImage($_FILES["image$i"]["tmp_name"]);
$frame->setImageDelay(10);
$GIF->addImage($frame);
}
header("Content-Type: image/gif");
echo $GIF->getImagesBlob();
Run Code Online (Sandbox Code Playgroud)
这个例子创建了一个Imagick对象,它将成为我们的GIF.然后循环上传到服务器的文件并首先读取每个文件(但请记住,这种技术依赖于图像按上述方式命名),其次是获取延迟值,第三,它附加到即将到来的GIF.这是基本的想法,它会产生你想要的东西(我希望).
但是有很多篡改,你的配置可能看起来不同.我总是发现php.net的Imagick API引用很糟糕,但它仍然很好用,我不时用它来引用标准的ImageMagick中的东西.
希望这有点与你追求的相符.
| 归档时间: |
|
| 查看次数: |
9594 次 |
| 最近记录: |