• PHP使用JPG生成GIF动画图片,基于php_imagick_st-Q8.dll


    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。

    4、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);
    }
    ?>
  • 相关阅读:
    python读取配置文件
    日志截取
    QJsonObject
    OpenStack
    生成器迭代器正则视频笔记
    使用Qt.createComponent 动态加载组件
    linux 远程执行命令
    Django 建立工程连接数据库
    arm基础1
    QSetting的用法
  • 原文地址:https://www.cnblogs.com/qingsong/p/5931991.html
Copyright © 2020-2023  润新知