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 相关文章推荐
JAVA/JSP学习系列之四
Oct 09 PHP
PHP中函数内引用全局变量的方法
Oct 20 PHP
php download.php实现代码 跳转到下载文件(response.redirect)
Aug 26 PHP
frename PHP 灵活文件命名函数 frename
Sep 09 PHP
PHP 基于Yii框架中使用smarty模板的方法详解
Jun 13 PHP
使用PHP接受文件并获得其后缀名的方法
Aug 05 PHP
PHP实现QQ空间自动回复说说的方法
Dec 02 PHP
php实现压缩合并js的方法【附demo源码下载】
Sep 22 PHP
php封装单文件上传到数据库(路径)
Oct 15 PHP
php使用filter_var函数判断邮箱,url,ip格式示例
Jul 06 PHP
laravel框架语言包拓展实现方法分析
Nov 22 PHP
PHP反射基础知识回顾
Sep 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
PHP5.3的垃圾回收机制(动态存储分配方案)深入理解
2012/12/10 PHP
自制基于jQuery的智能提示插件一枚
2011/02/18 Javascript
Jquery中getJSON在asp.net中的使用说明
2011/03/10 Javascript
jquery 回车事件实现代码
2011/08/23 Javascript
jquery validate poshytip 自定义样式
2012/11/26 Javascript
用函数模板,写一个简单高效的 JSON 查询器的方法介绍
2013/04/17 Javascript
javascript中动态加载js文件多种解决办法总结
2013/11/15 Javascript
jQuery对val和atrr("value")赋值的区别介绍
2014/09/26 Javascript
基于javascript代码检测访问网页的浏览器呈现引擎、平台、Windows操作系统、移动设备和游戏系统
2015/12/03 Javascript
基于javascript实现精确到毫秒的倒计时限时抢购
2016/04/17 Javascript
JavaScript的Backbone.js框架入门学习指引
2016/05/07 Javascript
jQuery使用each方法与for语句遍历数组示例
2016/06/16 Javascript
jQuery UI结合Ajax创建可定制的Web界面
2016/06/22 Javascript
JS只能输入正整数的简单实例
2016/10/07 Javascript
Bootstrap popover用法详解
2016/12/22 Javascript
JavaScript验证知识整理
2017/03/24 Javascript
前后端如何实现登录token拦截校验详解
2018/09/03 Javascript
解决vue 绑定对象内点击事件失效问题
2018/09/05 Javascript
JavaScript中作用域链的概念及用途讲解
2020/08/06 Javascript
[53:10]2018DOTA2亚洲邀请赛 4.6 淘汰赛 VP vs VG 第一场
2018/04/11 DOTA
使用XML库的方式,实现RPC通信的方法(推荐)
2017/06/14 Python
python笔记_将循环内容在一行输出的方法
2019/08/08 Python
Python的控制结构之For、While、If循环问题
2020/06/30 Python
Python基于locals返回作用域字典
2020/10/17 Python
CSS3地图动态实例代码(圆圈向外扩散)
2018/06/15 HTML / CSS
英国巧克力贸易公司:Chocolate Trading Company
2017/03/21 全球购物
有abstract方法的类一定要用abstract修饰吗
2016/03/14 面试题
编程输出如下图形
2013/11/24 面试题
电子商务专业毕业生工作推荐信
2013/11/17 职场文书
小松树教学反思
2014/02/11 职场文书
任命书格式
2014/06/05 职场文书
物理教育专业求职信
2014/06/25 职场文书
2015年度村委会工作总结
2015/04/29 职场文书
2015年依法行政工作总结
2015/04/29 职场文书
2015年女职工工作总结
2015/05/15 职场文书
python文件目录操作之os模块
2021/05/08 Python