PHP图像处理类库MagickWand用法实例分析


Posted in PHP onMay 21, 2015

本文实例讲述了PHP图像处理类库MagickWand用法。分享给大家供大家参考。具体分析如下:

MagickWand 是PHP的一个扩展程序,通过它建立起与ImageMagick的交互,进行图片的处理。它是默认的GD图象函数库的绝佳替代方案。从安全性和易用性来说,在PHP中使用MagickWand比使用命令行ImageMagick要安全快捷的多。另外 imagick也可用于PHP中作为ImageMagick的替代方案。

MagickWand 有两种形式,

只是建立与ImageMagick的交互,这种情况必须先安装ImageMagick,优点是扩展程序文件小(一般几百K),可以快速升级ImageMagick版本,不过WINDOWS临时目录需要特殊权限。

扩展程序本身包含了ImageMagick,优点是不需要额外安装ImageMagick,临时目录不需要特殊权限,但扩展程序文件比较大(一般4M以上)。

MagickWand 默认并没有在PHP的安装包里,需要去PHP网站上下载,并在PHP.INI中打开此扩展。

下面是一个使用 MagicWand 的代码片段:

$magick_wand=NewMagickWand();
MagickReadImage($magick_wand,'rose.jpg');
$drawing_wand=NewDrawingWand();
DrawSetFont($drawing_wand,"/usr/share/fonts/bitstream-vera/Vera.ttf");
DrawSetFontSize($drawing_wand,20);
DrawSetGravity($drawing_wand,MW_CenterGravity);
$pixel_wand=NewPixelWand();
PixelSetColor($pixel_wand,"white");
DrawSetFillColor($drawing_wand,$pixel_wand);
if (MagickAnnotateImage($magick_wand,$drawing_wand,0,0,0,"Rose") != 0)
{
  MagickEchoImageBlob( $magick_wand );
}
else
{
  echo MagickGetExceptionString($magick_wand);
}

安装方法:

1. 下载 php_magickwand_q16_st.dll for 5.2.x
2. 将其放在PHP的扩展目录
3. 在php.ini文件总增加 extension=php_magickwand_q16_st.dll
4. 重新启动apache

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
为php4加入动态flash文件的生成的支持
Oct 09 PHP
文件上传的实现
Oct 09 PHP
PHP中for与foreach的区别分析
Mar 09 PHP
PHP原生模板引擎 最简单的模板引擎
Apr 25 PHP
PHP删除数组中特定元素的两种方法
Jul 02 PHP
ThinkPHP空模块和空操作详解
Jun 30 PHP
destoon实现底部添加你是第几位访问者的方法
Jul 15 PHP
PHP生成网站桌面快捷方式代码分享
Oct 11 PHP
php图片处理函数获取类型及扩展名实例
Nov 19 PHP
PHP5.5新特性之yield理解与用法实例分析
Jan 11 PHP
laravel框架模型、视图与控制器简单操作示例
Oct 10 PHP
PHP使用递归按层级查找数据的方法
Nov 10 PHP
php使用标签替换的方式生成静态页面
May 21 #PHP
php eval函数一句话木马代码
May 21 #PHP
php结合正则批量抓取网页中邮箱地址
May 19 #PHP
php实现模拟登陆方正教务系统抓取课表
May 19 #PHP
PHP IDE phpstorm 常用快捷键
May 18 #PHP
PHP网络操作函数汇总
May 18 #PHP
PHP面向对象之后期静态绑定功能介绍
May 18 #PHP
You might like
[转帖]PHP世纪万年历
2006/12/06 PHP
PHP获取用户的浏览器与操作系统信息的代码
2012/09/04 PHP
php根据年月获取季度的方法
2014/03/31 PHP
php中通过DirectoryIterator删除整个目录的方法
2015/03/13 PHP
Laravel框架实现定时Task Scheduling例子
2019/10/22 PHP
JavaScript中的值类型转换介绍
2014/12/31 Javascript
js随机生成网页背景颜色的方法
2015/02/26 Javascript
jQuery实现的支持IE的html滑动条
2015/03/16 Javascript
Bootstrap树形组件jqTree的简单封装
2016/01/25 Javascript
javascript学习之json入门
2016/12/22 Javascript
轻松理解JavaScript之AJAX
2017/03/15 Javascript
jQuery的时间datetime控件在AngularJs中的使用实例(分享)
2017/08/17 jQuery
基于jquery实现五星好评
2017/11/18 jQuery
nodejs中express入门和基础知识点学习
2018/09/13 NodeJs
vue中利用iscroll.js解决pc端滚动问题
2020/02/15 Javascript
nuxt引入组件和公共样式的操作
2020/11/05 Javascript
在实例中重学JavaScript事件循环
2020/12/03 Javascript
原生JavaScript实现进度条
2021/02/19 Javascript
人脸识别经典算法一 特征脸方法(Eigenface)
2018/03/13 Python
python实现超简单的视频对象提取功能
2018/06/04 Python
python opencv实现证件照换底功能
2019/08/19 Python
Python如何实现远程方法调用
2020/08/07 Python
Python获取android设备cpu和内存占用情况
2020/11/15 Python
HTML5 Canvas的性能提高技巧经验分享
2013/07/02 HTML / CSS
德国鞋子网上商店:Omoda.de
2017/03/31 全球购物
Saucony澳大利亚官网:美国跑鞋品牌,运动鞋中的劳斯莱斯
2018/05/05 全球购物
彪马西班牙官网:PUMA西班牙
2019/06/18 全球购物
测试工程师岗位职责
2013/11/28 职场文书
小学教师管理制度
2014/01/18 职场文书
慰问敬老院活动总结
2014/04/26 职场文书
沙滩主题婚礼活动策划方案
2014/09/15 职场文书
公司员工体检通知
2015/04/21 职场文书
话题作文之呼唤
2019/12/18 职场文书
Python 循环读取数据内存不足的解决方案
2021/05/25 Python
pytorch finetuning 自己的图片进行训练操作
2021/06/05 Python
关于python中模块和重载的问题
2021/11/02 Python