php_imagick实现图片剪切、旋转、锐化、减色或增加特效的方法
|
本文实例讲述了php_imagick实现图片剪切、旋转、锐化、减色或增加特效的方法。分享给大家供大家参考。具体分析如下: 一个可以供PHP调用ImageMagick功能的PHP扩展。使用这个扩展可以使PHP具备和ImageMagick相同的功能。 ImageMagick是一套功能强大、稳定而且免费的工具集和开发包,可以用来读、写和处理超过185种基本格式的图片文件,包括流行的TIFF,JPEG,GIF,PNG,PDF以及PhotoCD等格式。利用ImageMagick,你可以根据web应用程序的需要动态生成图片,还可以对一个(或一组)图片进行改变大小、旋转、锐化、减色或增加特效等操作,并将操作的结果以相同格式或其它格式保存。 php_imagick是PHP对图片处理的一个扩展包,可以完成对图片改变大小、旋转、锐化、减色或增加特效等操作。 一、windows下安装Imagick扩展:1、下载 ImageMagick并安装 http://image_magick.veidrodis.com/image_magick/binaries/ImageMagick-6.6.2-10-Q16-windows-dll.exe 2、下载php_imagick.dll http://valokuva.org/outside-blog-content/imagick-windows-builds/php53/imagick-2.3.0-dev/vc9_nts/php_imagick.dll 如果你用的是线程安全的php,请下载 http://valokuva.org/outside-blog-content/imagick- windows-builds/php53/imagick-2.3.0-dev/vc9_zts/php_imagick.dll 3、设置 在php.ini中添加 extension=php_imagick.dll ,重启web server 二、linux下安装Imagick扩展:1.yum安装ImageMagick yum install ImageMagick ImageMagick-devel 2.测试是否安装成功 convert -version 3.安装imagick扩展 01.wget http://pecl.php.net/get/imagick-3.1.0RC2.tgz02.tar xzvf imagick-3.1.0RC2.tgz03.cd imagick-3.1.0RC204.phpize05../configure06.make07.make install 4.编辑php.ini文件,在文件末尾添加如下代码 extension=imagick.so 5. 重新启动apache服务器 service httpd restart 三、案例1. 边框处理 代码如下: setColor("rgb(220,220,220)");
$image->borderImage($color,5,4);
$image->blurImage(5,imagick::CHANNEL_GREEN);
echo $image;
我们先来看个简单的实例
php_imagick程序示例 1.创建一个缩略图并显示出来代码如下:thumbnailImage(100,0);
echo $image;
?>
2.创建一个目录下的缩略图,并保存代码如下:thumbnailImage(1024,0);
}
$images->writeImages();
?>
3.缩略GIF动画图片代码如下:thumbnailImage(50,50);
/* Set the virtual canvas to correct size */
$frame->setImagePage(50,50,0);
}/* Notice writeImages instead of writeImage */
$im->writeImages("example_small.gif",true);
?>
现在我们进入正题吧,
示例: 裁切/生成缩略图/添加水印,自动检测和处理 GIF 调用方式: 代码如下: open('a.gif');
$image->resize_to(100,100,'scale_fill');
$image->add_text('1024i.com',10,20);
$image->add_watermark('1024i.gif',50);
$image->save_to('x.gif');
imagick.class.php
// 析构函数 public function crop($x=0,$y=0,$width=null,$height=null) if($this->type=='gif') $images = $image->coalesceImages(); $image->destroy();
north_west north north_east west center east south_west south south_east */ switch($fit) $images = $image->coalesceImages(); $x = 0; $dst_width = $width; $color = 'rgba('.$fill_color[0].','.$fill_color[1].','.$fill_color[2].','.$fill_color[3].')'; $draw = new ImagickDraw(); (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
