之前使用GD库可以满足项目中需要的头像,图片的处理。包括群和讨论组的类似QQ讨论组九宫格头像拼接也用GD库实现了。 但是,在用户量逐步涨上来的时候,效率上就满足不了。即便做了异步队列来异步生成讨论的头像,还是会有延迟显示的问题出现。

索性,直接换上imagick。

先解释下名词,这两者的关系;

ImageMagick:

ImageMagick 是用来创建,编辑,合并位图图像的一套组件。 它能够用于读取,转换,写入多种不同格式的图像。 包含 DPX, EXR, GIF, JPEG, JPEG-2000, PDF, PhotoCD, PNG, Postscript, SVG, 和 TIFF。

imagick:

imagick 是用 ImageMagic API 来创建和修改图像的PHP官方扩展。 imagick的PHP扩展库地址:http://pecl.php.net/package/imagick

一、安装ImageMagick:

两种方式安装:

源码安装;

rpm软件包安装;

推荐使用rpm软件包安装,注意root权限同时安装 ImageMagick 和 ImageMagick-libs。

这里使用的是源码安装,注意是root权限,步骤如下:

1.下载源码:

$ wget http://www.imagemagick.org/download/ImageMagick.tar.gz

2.解压:

$ tar zxf ImageMagick.tar.gz

3.进入目录:

$ cd ImageMagick-7.0.7-15

4.检查配置环境, 生成 Makefile:

$ ./configure --prefix=/usr/local/ImageMagick-7

官方推荐高级用户使用:

$ ./configure --with-modules --enable-shared --with-perl

5.编译并安装:

$ make && make install

6.检查是否安装成功:

$ convert -version

二、安装PHP扩展imagick:

也有两种方式安装:

源码安装;

需要指定 ImageMagick 的安装目录

pecl安装;

rpm软件包安装 ImageMagick ,使用 pecl 安装更快捷。

root 权限执行: $ pecl install imagick

下载:wget http://pecl.php.net/get/imagick-3.4.3.tgz

这里也使用源码安装imagick扩展,步骤如下:

下载imagick:

$ wget http://pecl.php.net/get/imagick-3.4.3.tgz

解压:

$ tar zxvf imagick-3.4.3.tgz

进入目录:

$ cd imagick-3.4.3

生成configure配置文件:

$ phpize

检查配置环境, 生成 Makefile, 指定 ImageMagick 路径:

$ ./configure --with-php-config=/usr/local/php/bin/php-config \

--with-imagick=/usr/local/ImageMagick-7

编译并安装:

$ make && make install

备注:在安装过程中出现错误,一般是由于缺少编译工具包导致,可根据提示参照第一步安装相应的工具包即可。安装完成之后,出现下面的界面:

Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/

Installing header files: /usr/local/php/include/php/

配置 php 支持 imagick:

查看php.ini路径:

$ php --ini

Configuration File (php.ini) Path: /usr/local/php/etc

Loaded Configuration File: /usr/local/php/etc/php.ini

Scan for additional .ini files in: /usr/local/php/conf.d

Additional .ini files parsed: /usr/local/php/conf.d/002-zendguardloader.ini

编辑配置文件,添加扩展支持:

$ vim /usr/local/php/etc/php.ini

在最后一行添加, extension="imagick.so"

重载php-fpm:

$ service php-fpm reload # CentOS7 可以使用此命令,或者 systemctl reload php-fpm

检查扩展是否安装成功:

$ php -m | grep imagick

查看imagick扩展信息:

$ php --ri imagick

php安装扩展imagick,php安装扩展imagick相关推荐

  1. windows7下安装php的imagick和imagemagick扩展教程

    这篇文章主要介绍了windows7下安装php的imagick和imagemagick扩展教程,同样也适应XP操作系统,Win8下就没测试过了,需要的朋友可以参考下 最近的PHP项目中,需要用到切图和 ...

  2. imagick php手册,imagick php的扩展的安装和使用

    简介 在php中处理图片一般都是使用自带的GD库相关的函数来处理的,功能比较有限. ImageMagick 是一个免费的创建.编辑.合成图片的软件.它可以读取.转换.写入多种格式的图片.图片切割.颜色 ...

  3. PHP的Imagick拓展安装

    一:windows下安装Imagick拓展 1. 下载Imagick Imagick下载地址 imagick拓展下载地址 2. 安装Imagick [1]将下载下来的安装包解压然后将php_imagi ...

  4. php7 imagick扩展,浅谈php扩展imagick

    PHP建图通常都用GD库,因为是内置的不需要在服务器上额外安装插件,所以用起来比较省心,但是如果你的程序主要的功能就是处理图像,那麼就不建议用GD了,因为GD不但低效能而且能力也比较弱,佔用的系统资源 ...

  5. python基础:python扩展包的安装方式

    python扩展包有三种安装方式: 1. pip安装方式.python3默认自带pip,无需另外安装:在python2.7版本上默认为easy_install安装工作进行安装,如果需要使用pip安装, ...

  6. linux php7扩展查看,linux安装PHP7以及扩展

    Linux下安装PHP7 事先升级gcc4.8,然后安装PHP7,安装步骤参考:CentOS安装PHP7 1.Linux下编译的php没有php.ini 解决办法:从源代码目录中复制php.ini-d ...

  7. linux php 编译 pdo,Linux 下 PHP 扩展 PDO 编译安装

    1.进入PHP的软件包pdo扩展目录中(注:不是PHP安装目录) 执行phpize 命令 [[email protected] pdo_mysql]# /usr/local/php/bin/phpiz ...

  8. zlib 离线安装_黑板派Python扩展库安装与常见问题解决完整指南

    点击蓝字 ! 关注我们 "Python小屋"编程比赛正式开始 推荐图书: <Python程序设计(第3版)>,(ISBN:978-7-302-55083-9),董付国, ...

  9. php扩展mongodb模块安装

    php的mongodb的扩展有俩个 一个是mongo.so 另一个是mongodb.so 在官方的文档说的是 mongo.so 是针对php5.x的版本,mongo.so是一个比较老的扩展,以后可能不 ...

最新文章

  1. 【刷算法】LeetCode- 两数之和
  2. python趣味编程10例-python趣味编程100例(99个)
  3. matlab教程lqg函数与收敛速度,科学网—Matlab编写由加速度积分得到速度和位移函数 - 王德才的博文...
  4. Python之路(第三十九篇)管道、进程间数据共享Manager
  5. docker 进入容器 开启一个新的bash窗口
  6. Java this 关键字的用法
  7. Springboot后台接收前端Date类型
  8. 这部计算机27厘米宽英语怎么说,24/27/32寸电脑显示器尺寸多大?长宽多少厘米?显示屏长宽与面积的算法...
  9. oracle 循环修改数据库,oracle对一个表的多行数据进行修改,SQL批量修改
  10. 用python编辑word_使用PYTHON编辑和读取WORD文档
  11. 关于JS中apply和call详细解答
  12. 笔记:css中的position定位
  13. Jedis对redis分布式锁的操作(设置过期时间,UUID,LUA脚本)
  14. 轻松搞定C语言中复杂的声明
  15. Java发送邮件换行问题
  16. 日常思维方法:演绎法 归纳法
  17. 酒店预订系统web端Android端,基于WEB的酒店客房预订系统的设计与实现
  18. IDEA设置成白色背景
  19. mysql按月份分组查询_mysql如何按月份分组查询
  20. sqldbx mysql 乱码_sqlDbx连接mysql 及乱码

热门文章

  1. 简约而不简单的CountDownLatch
  2. 小程序背景图满屏_程序员的PPT写作方式果然别具一格啊
  3. python中chr函数的作用_chr()函数以及Python中的示例
  4. c++中的不可复制类型
  5. 弘辽科技:淘宝做收藏加购有权重吗?权重规则是什么?
  6. 弘辽科技:淘宝搜索流量是什么意思?
  7. MySQL:单表查询---简单查询+条件查询+高级查询+表和字段取别名
  8. 特种搜索引擎大揭密B
  9. 比特率,帧率,分辨率对视频画质的影响
  10. 人力资源:一个很著名的测试