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 相关文章推荐
php中看实例学正则表达式
Dec 25 PHP
PHP的substr_replace将指定两位置之间的字符替换为*号
May 04 PHP
基于Zookeeper的使用详解
May 02 PHP
PHP mail()函数使用及配置方法
Jan 14 PHP
php比较两个绝对时间的大小
Jan 31 PHP
php通过修改header强制图片下载的方法
Mar 24 PHP
PHP使用PHPexcel导入导出数据的方法
Nov 14 PHP
php实现统计目录文件大小的函数
Dec 25 PHP
laravel5创建service provider和facade的方法详解
Jul 26 PHP
PHP获取二叉树镜像的方法
Jan 17 PHP
PHP7.1实现的AES与RSA加密操作示例
Jun 15 PHP
PHP使用Http Post请求发送Json对象数据代码解析
Jul 16 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
SONY ICF-SW07收音机电路分析
2021/03/02 无线电
二进制交叉权限微型php类分享
2014/02/07 PHP
thinkphp实现数组分页示例
2014/04/13 PHP
ThinkPHP CURD方法之limit方法详解
2014/06/18 PHP
YII Framework框架教程之缓存用法详解
2016/03/14 PHP
php微信开发之自定义菜单实现
2016/11/18 PHP
yii2中LinkPager增加总页数和总记录数的实例
2017/08/28 PHP
thinkphp5.0自定义验证规则使用方法
2017/11/16 PHP
jQuery的12招常用技巧分享
2011/08/08 Javascript
原生Ajax 和jQuery Ajax的区别示例分析
2014/12/17 Javascript
node.js解决获取图片真实文件类型的问题
2014/12/20 Javascript
jQuery获取上传文件的名称的正则表达式
2015/05/21 Javascript
谷歌showModalDialog()方法不兼容出现对话窗口的解决办法
2016/02/15 Javascript
js贪吃蛇游戏实现思路和源码
2016/04/14 Javascript
JS库 Highlightjs 添加代码行号的实现代码
2017/09/13 Javascript
微信小程序获取手机号授权用户登录功能
2017/11/09 Javascript
Ionic学习日记实现验证码倒计时
2018/02/08 Javascript
深入理解Vue nextTick 机制
2018/04/28 Javascript
JavaScript函数式编程(Functional Programming)声明式与命令式实例分析
2019/05/21 Javascript
vue限制输入框只能输入8位整数和2位小数的代码
2019/11/06 Javascript
python list 合并连接字符串的方法
2013/03/09 Python
python调用windows api锁定计算机示例
2014/04/17 Python
Python numpy生成矩阵、串联矩阵代码分享
2017/12/04 Python
Django 跨域请求处理的示例代码
2018/05/02 Python
使用Python的toolz库开始函数式编程的方法
2018/11/15 Python
Python3字符串encode与decode的讲解
2019/04/02 Python
pyecharts绘制中国2020肺炎疫情地图的实例代码
2020/02/12 Python
PyCharm2020.1.2社区版安装,配置及使用教程详解(Windows)
2020/08/07 Python
详解CSS3 用border写 空心三角箭头 (两种写法)
2017/09/29 HTML / CSS
css3加js做一个简单的3D行星运转效果实例代码
2017/01/18 HTML / CSS
CSS3 实现时间轴动画
2020/11/25 HTML / CSS
《雨点》教学反思
2014/02/12 职场文书
学校工作推荐信范文
2014/07/11 职场文书
小学英语课教学反思
2016/02/15 职场文书
详解Nginx 工作原理
2021/03/31 Servers
SqlServer数据库远程连接案例教程
2021/07/15 SQL Server