IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    在Linux下安装 ImageMagick 和 imagick

    陈华发表于 2016-05-28 03:34:50
    love 0

    ImageMagick 介绍

    ImageMagick 是一套功能强大、稳定而且免费的工具集和开发包,可以用来读、写和处理超过185种基本格式的图片文件,包括流行的TIFF, JPEG, GIF, PNG, PDF以及PhotoCD等格式。利用 ImageMagick 你可以根据web应用程序的需要动态生成图片, 还可以对一个(或一组)图片进行改变大小、旋转、锐化、减色或增加特效等操作,并将操作的结果以相同格式或其它格式保存。ImageMagick 的官网:http://www.imagemagick.org/,详细使用手册:http://www.imagemagick.org/Usage/

    imagick 介绍

    一个可以供PHP调用 ImageMagick 功能的PHP扩展,使用这个扩展可以使PHP具备和ImageMagick相同的功能。imagick 官网:http://pecl.php.net/package/imagick

    ImageMagick 安装

    1
    2
    3
    4
    5
    wget http://www.imagemagick.org/download/ImageMagick.tar.gz
    tar zxvf ImageMagick.tar.gz
    cd ImageMagick-6.8.9-7
    ./configure --prefix=/usr/local/ImageMagick/ --enable-lzw --with-modules --with-quantum-depth=8?--enable-shared --disable-openmp
    make && make install

    编译安装过程时间比较长,请耐心等待!

    安装完成后执行:/usr/local/ImageMagick/bin/convert logo: logo.gif 测试一下 ImageMagick 是否可以正常运行,如果没有提示任何错误,然后检查执行命令时所在的目录,看看是否生成了logo.gif 这个文件。

    也可以在安装完成后,运行convert -version命令检测,应该会出现类似下面内容的信息:

    1
    2
    <p>Version: ImageMagick 6.8.9-7 Q8 x86_64 2014-08-20 http://www.imagemagick.org<br>
    Copyright: Copyright (C) 1999-2008 ImageMagick Studio LLC</p>

    convert默认安装到了/usr/local/ImageMagick/bin下面,上面的命令可能提示找不到convert命令,那么可以在/usr/bin下面创建一个到/usr/local/ImageMagick/bin/convert的链接:

    1
    2
    cd /usr/bin
    ln -s /usr/local/ImageMagick/bin/convert convert

    ImageMagick安装说明

    1、在安装时也可以加入–without-xxx来禁止一些选项,具体的就 ./configure –help | grep without来查看有哪些吧;

    2、关于Q8,Q16,Q32的说明:

    3、–enable-shared 编译成共享库;

    4、–disable-openmp 禁用多线程,使用多线程性能并没有提高,但CPU占用达到了100%,所以禁用;

    5、卸载命令:make uninstall。

    PHP扩展imagick安装

    1
    2
    3
    4
    5
    6
    wget http://pecl.php.net/get/imagick-3.1.2.tgz
    tar zxvf imagick-3.1.2.tgz
    cd imagick-3.1.2
    phpize  //每个服务器位置不一样
    ./configure --with-php-config=/你的php路径/php-config --with-imagick=/usr/local/ImageMagick/
    make && make install

    imagick安装执行结果

    1
    2
    Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/
    Installing header files:          /usr/local/php/include/php/

    生成imagick.so到/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/,然后手动配置php.ini使其生效,手工在php.ini里面添加上imagick扩展,extension=imagick.so,重启php,检查phpinfo,看是否加载成功,该扩展不是使用–with-imagick在编译PHP的时候静态编译进PHP,而是类似memcache的方式,编译成so模块动态加载的。

    imagick无法安装时的解决办法

    有时安装imagick是会提示:

    1
    “configure: error: not found. Please provide a path to MagickWand-config or Wand-config program.”

    这是因为只安装了“ImageMagick”而没有安装“ImageMagick-devel”,通过下面的命令行安装ImageMagick-devel,然后重新按上面的步骤安装imagick就好了。

    1
    yum install ImageMagick-devel

    Discuz!X上的ImageMagick设置

    登录Discuz!X后台,在“上传设置”里选择ImageMagick,并在ImageMagick程序安装路径写上:/usr/local/ImageMagick/bin/

    关闭多线程

    单线程转换每张图片大概50ms,两个线程却需要500ms?

    用convert –version命令查看,看是否出现openMP字样,出现的话,是因为机器不支持openMP导致的,需要重新编译./configure –disable-openmp,再进行安装。

    自由转载,转载请注明: 转载自WEB开发笔记 www.chhua.com

    本文链接地址: 在Linux下安装 ImageMagick 和 imagick http://www.chhua.com/web-note5323

    随机笔记

    • Illustrator cs5破解方法(亲测绝对能用)
    • SVN自动更新
    • 面对息壤的垃圾空间也只能这样了!
    • 分享几款好用的jQuery 折叠菜单插件
    • PHP高级对象构建——多个构造函数的使用



沪ICP备19023445号-2号
友情链接