【imagick方法】如何使动态图片保存后依然是动态的?
网页生成直接显示是动态的,可是保存后就成不动的了,只显示最后一张了,例如:
最终保存后只显示d.png的这针了,网上查了下,也没找到多少相关资料,各位大牛帮帮吗啊
$filelist = array('a.png', 'b.png', 'c.png', 'd.png');//组合gif动态图片的图片列表
$gif = new Imagick();
$gif->setFormat("gif");//设置生成图片的格式为gif格式
/* 添加字符串设置 ->
$str = '这是为什么呢?';//要加的字符串
$draw = new ImagickDraw;
$draw->setfont('default.ttf');//字体
$draw->setfontsize(12);//字体大小
$draw->setfillalpha(0.4);//字体透明度
$draw->arc(50, 100, 150, 150, 100, 1000);//初始化一个图形
<- */
foreach($filelist as $file){
$file = new Imagick($file);
/*
$width = $file->getimagewidth();//获取单张图片的宽
$height = $file->getimageheight();//获取单张图片的高
$file->adaptiveresizeimage($width * 3, $height * 3);//重设每张图片大小
*/
// $file->adaptiveThresholdImage(40, 10, 1);//颜色强度
// $file->adaptiveblurimage(20, 1);//模糊、锐化
// $file->resizeimage($img->getimagewidth(), $img->getimageheight(), 20, 20);//缩略、模糊
// $file->annotateImage($draw, 50, 50, 50, $str);//向图片中写字符串
// $file->drawimage($draw);//添加图形
$gif->addImage($file);//向gif图片中添加图像(图片)
$gif->setImageDelay(100);//设置间隔
}
header("Content-Type: image/gif");
//echo $gif->getImagesBlob();//直接输出就是动的
echo $gif->writeImages("test.gif", true);//如果保存就不动了
$gif->clear();
$gif->destroy();
最终保存后只显示d.png的这针了,网上查了下,也没找到多少相关资料,各位大牛帮帮吗啊
...全文
相关推荐
php的imagick给动态图片添加文字水印
php的imagick给动态图片添加文字水印。亲测可行。具体见文章 https://www.jianshu.com/p/790a53c1c30f
PHP基于imagick扩展实现合成图片的两种方法【附imagick扩展下载】
主要介绍了PHP基于imagick扩展实现合成图片的两种方法,结合实例形式分析了php使用imagick扩展进行图片合并的具体操作方法与相关实现技巧,并附带imagick扩展下载地址与配置方法,需要的朋友可以参考下
php使用Imagick生成图片的方法
主要介绍了php使用Imagick生成图片的方法,实例分析了php基于Imagick实现添加水印、文字的图片功能,具有一定参考借鉴价值,需要的朋友可以参考下
PHP基于php_imagick_st-Q8.dll实现JPG合成GIF图片的方法
主要介绍了PHP基于php_imagick_st-Q8.dll实现JPG合成GIF图片的方法,需要的朋友可以参考下
PHP编程获取图片的主色调的方法【基于Imagick扩展】
主要介绍了PHP编程获取图片的主色调的方法,基于PHP的Imagick扩展实现针对图片的颜色值获取功能,需要的朋友可以参考下


基础编程
