程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> PHP基於php_imagick_st-Q8.dll實現JPG合成GIF圖片的方法

PHP基於php_imagick_st-Q8.dll實現JPG合成GIF圖片的方法

編輯:PHP綜合

一、概述:

本文詳解了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);
}
?>
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved