ImageMagick创建的我的GIF在播放下一帧时保留了先前的帧。我希望它仅显示其当前所在的框架。
$GIF = new Imagick();
$GIF->setFormat("gif");
$frame = new Imagick();
$frame->readImageBlob($frames[1]);
$frame->setImageDelay(10);
$GIF->addImage($frame);
$frame = new Imagick();
$frame->readImageBlob($frames[2]);
$frame->setImageDelay(10);
$GIF->addImage($frame);
$gifblob = $GIF->getImagesBlob();
我知道我应该循环执行此操作,但是无论哪种方式。有什么方法可以阻止前一帧停留在动画中?我希望添加到GIF中的每个图像都替换前一帧。
编辑:我缺少问题-$ GIF-> setImageDispose(2); (感谢fmw42)