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,不用COM,生成excel文件
Oct 09 PHP
Zend Studio for Eclipse的java.lang.NullPointerException错误的解决方法
Dec 06 PHP
Windows7下PHP开发环境安装配置图文方法
May 20 PHP
完美解决:Apache启动问题―(OS 10022)提供了一个无效的参数
Jun 08 PHP
解密ThinkPHP3.1.2版本之模块和操作映射
Jun 19 PHP
php实现的九九乘法口诀表简洁版
Jul 28 PHP
使用GDB调试PHP代码,解决PHP代码死循环问题
Mar 02 PHP
PHP开发框架laravel安装与配置教程
Mar 13 PHP
php上传图片客户端和服务器端实现方法
Mar 30 PHP
PHP接收App端发送文件流的方法
Sep 23 PHP
简单实现php上传文件功能
Sep 21 PHP
基于php伪静态的实现方法解析
Jul 31 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 移除数组重复元素的一点说明
2008/11/27 PHP
destoon首页调用求购供应信息的地区名称的方法
2014/08/21 PHP
php可应用于面包屑导航的递归寻找家谱树实现方法
2015/02/02 PHP
Smarty最简单实现列表奇偶变色的方法
2015/07/01 PHP
PHP定义字符串的四种方式详解
2018/02/06 PHP
PHP vsprintf()函数格式化字符串操作原理解析
2020/07/14 PHP
JS实现在Repeater控件中创建可隐藏区域的代码
2010/09/16 Javascript
jQuery 淡入淡出 png图在ie8下有黑色边框的解决方法
2013/03/05 Javascript
jquery处理json数据实例分析
2014/06/03 Javascript
使用Vue完成一个简单的todolist的方法
2017/12/01 Javascript
vue中手机号,邮箱正则验证以及60s发送验证码的实例
2018/03/16 Javascript
详解小程序原生使用ES7 async/await语法
2018/08/06 Javascript
微信小程序地图导航功能实现完整源代码附效果图(推荐)
2019/04/28 Javascript
详解webpack打包vue项目之后生成的dist文件该怎么启动运行
2019/09/06 Javascript
如何优雅地在Node应用中进行错误异常处理
2019/11/25 Javascript
解决vue 使用setTimeout,离开当前路由setTimeout未销毁的问题
2020/07/21 Javascript
python之pandas用法大全
2018/03/13 Python
Python数据分析库pandas基本操作方法
2018/04/08 Python
python 拷贝特定后缀名文件,并保留原始目录结构的实例
2018/04/27 Python
Python线程下使用锁的技巧分享
2018/09/13 Python
Python txt文件加入字典并查询的方法
2019/01/15 Python
HTML5 canvas基本绘图之绘制线段
2016/06/27 HTML / CSS
跑鞋、网球鞋、网球拍、服装及装备:Holabird Sports
2016/09/19 全球购物
澳大利亚优质的家居用品和生活方式公司:Bed Bath N’ Table
2019/04/16 全球购物
应届生船舶驾驶求职信
2013/10/19 职场文书
行政部岗位职责范本
2014/03/13 职场文书
小学生保护环境倡议书
2014/05/15 职场文书
团队口号大全
2014/06/06 职场文书
办公室日常管理制度
2015/08/04 职场文书
公司团队口号霸气押韵
2015/12/24 职场文书
2016关于读书活动的心得体会
2016/01/14 职场文书
解析laravel使用workerman用户交互、服务器交互
2021/04/28 PHP
spring boot项目application.properties文件存放及使用介绍
2021/06/30 Java/Android
Redis高并发防止秒杀超卖实战源码解决方案
2021/11/01 Redis
SQL注入详解及防范方法
2021/12/06 MySQL
vue项目如何打包之项目打包优化(让打包的js文件变小)
2022/04/30 Vue.js