PHP基于php_imagick_st-Q8.dll实现JPG合成GIF图片的方法


Posted in PHP onJuly 11, 2014

一、概述:

本文详解了PHP基于php_imagick_st-Q8.dll实现JPG合成GIF图片的方法。
首先要实现PHP使用php_imagick_st-Q8.dll类库,把JPG图片连接生成GIF动画图片,需要事先下载好php_imagick_st-Q8.dll动态链接库文件,并配置php.ini文件,启用php_imagick_st-Q8.dll

二、配置方法如下:

1、将下载的php_imagick_st-Q8.dll文件放到PHP默认的扩展目录,也就是:php/ext/目录内
2、打开php.ini,在extension区域新加入此行,注意前面不要有“;”,即:
extension=php_imagick_st-Q8.dll
3、重启apache或IIS

三、PHP实现代码如下:

<?php
//定义JPG的图片序列
$filelist = array(
  '1.jpg',
  '2.jpg',
  '3.jpg',
  '4.jpg'
);
$type = 'gif';
$num = 200;
$qian = 'new_';
$path = './gif/';
$is = 1;
//生成gif图片的函数
get_img($filelist, $type, $num, $qian, $path, $is);
/*
 * get_img 图片合并,生成gif动态
 * $filelist 要合并的图片数组
 * $type 生成的类型
 * $num 生成的帧数
 * $qian 新文件名前缀
 * $path 保持路径
 * $is 是否预览
 */
function get_img($filelist, $type, $num, $qian, $path, $is)
{
 //初始化类
 $animation = new Imagick();
 //设置生成的格式
 $animation->setFormat($type);
 foreach ( $filelist as $file ){
 $image = new Imagick();
 $image->readImage( $file );  //合并图片
 $animation->addImage( $image ); //加入到对象
 $animation->setImageDelay($num); //设定图片帧数
 unset( $image );    //清除内存里的图像,释放内存
 }
 //以下两行是调试时用的,测试是否生成了gif图片
 //header( "Content-Type: image/gif" );
 //echo( $animation->getImagesBlob() );
 //生成的GIF文件名组合
 $images = $qian . time(). '.' . $type;
 //生成GIF图片
 $animation->writeImages( $images,true );
 //保存GIF到指定文件夹
 copy($images, $path . $images);
 //是否预览
 if($is)
 {
 echo '已生成gif图片: ' . $images . '<br />';
 echo "<img src='" . $path . $images . "' />";
 }
 else
 {
 echo '已生成gif图片: ' . $images . '<br />';
 }
 //删除原来保存的图片
 unlink($images);
}
?>
PHP 相关文章推荐
PHP中HTTP方式下的Gzip压缩传输方法举偶
Feb 15 PHP
php 什么是PEAR?
Mar 19 PHP
一步一步学习PHP(6) 面向对象
Feb 16 PHP
利用php实现禁用IE和火狐的缓存问题
Dec 03 PHP
php获取qq用户昵称和在线状态(实例分析)
Oct 27 PHP
php 强制下载文件实现代码
Oct 28 PHP
PHP获取QQ达人QQ信息的方法
Mar 05 PHP
PHP实现数组array转换成xml的方法
Jul 19 PHP
PHP获取指定日期是星期几的实现方法
Nov 30 PHP
PHP调试及性能分析工具Xdebug详解
Feb 09 PHP
由php中字符offset特征造成的绕过漏洞详解
Jul 07 PHP
PHP基于进程控制函数实现多线程
Dec 09 PHP
php事务处理实例详解
Jul 11 #PHP
PHP实现显示照片exif信息的方法
Jul 11 #PHP
php中json_encode处理gbk与gb2312中文乱码问题的解决方法
Jul 10 #PHP
PHP5.3与5.5废弃与过期函数整理汇总
Jul 10 #PHP
ThinkPHP标签制作教程
Jul 10 #PHP
YII路径的用法总结
Jul 09 #PHP
YII实现分页的方法
Jul 09 #PHP
You might like
打造超酷的PHP数据饼图效果实现代码
2011/11/23 PHP
ajax完美实现两个网页 分页功能的实例代码
2013/04/16 PHP
PHP全功能无变形图片裁剪操作类与用法示例
2017/01/10 PHP
详解Yaf框架PHPUnit集成测试方法
2017/12/27 PHP
用js计算页面执行时间的函数
2006/12/07 Javascript
JavaScript设计模式之单例模式实例
2014/09/24 Javascript
JavaScript中匿名函数用法实例
2015/03/23 Javascript
JS+CSS实现简单的二级下拉导航菜单效果
2015/09/21 Javascript
Javascript实现图片轮播效果(一)让图片跳动起来
2016/02/17 Javascript
全面解析JavaScript中的valueOf与toString方法(推荐)
2016/06/14 Javascript
JS前端开发判断是否是手机端并跳转操作(小结)
2017/02/05 Javascript
jQuery基于ajax方式实现用户名存在性检查功能示例
2017/02/10 Javascript
Vue.js 单页面多路由区域操作的实例详解
2017/07/17 Javascript
防止页面url缓存中ajax中post请求的处理方法
2017/10/10 Javascript
利用VS Code开发你的第一个AngularJS 2应用程序
2017/12/15 Javascript
Layui带搜索的下拉框的使用以及动态数据绑定方法
2019/09/28 Javascript
简单了解JavaScript弹窗实现代码
2020/05/07 Javascript
JavaScript中作用域链的概念及用途讲解
2020/08/06 Javascript
用tensorflow搭建CNN的方法
2018/03/05 Python
Django 使用Ajax进行前后台交互的示例讲解
2018/05/28 Python
python矩阵的转置和逆转实例
2018/12/12 Python
Python实现的矩阵转置与矩阵相乘运算示例
2019/03/26 Python
Django接收post前端返回的json格式数据代码实现
2019/07/31 Python
Python抓新型冠状病毒肺炎疫情数据并绘制全国疫情分布的代码实例
2020/02/05 Python
Python的PIL库中getpixel方法的使用
2020/04/09 Python
Mac PyCharm中的.gitignore 安装设置教程
2020/04/16 Python
Python gevent协程切换实现详解
2020/09/14 Python
STAUD官方网站:洛杉矶独有的闲适风格
2019/04/11 全球购物
实习生自我鉴定
2013/12/12 职场文书
大三学生入党思想汇报
2014/01/02 职场文书
党员学习正风肃纪思想汇报
2014/09/12 职场文书
初中生毕业评语
2014/12/29 职场文书
悬崖上的金鱼姬观后感
2015/06/15 职场文书
团结主题班会
2015/08/13 职场文书
小学英语教师2015年度个人工作总结
2015/10/14 职场文书
导游词之四川熊猫基地
2020/01/13 职场文书