• Centos5.8 安装 ImageMagick 6.8.9-3


    下载最新的 ImageMagick-6.8.9-3.x86_64.rpm 直接prm -ivh 安装提示错误

    	error: Failed dependencies:
    	libHalf.so.4()(64bit) is needed by ImageMagick-6.8.0-4.x86_64
    	libIex.so.4()(64bit) is needed by ImageMagick-6.8.0-4.x86_64
    	libIlmImf.so.4()(64bit) is needed by ImageMagick-6.8.0-4.x86_64
    	libImath.so.4()(64bit) is needed by ImageMagick-6.8.0-4.x86_64
    	libltdl.so.3()(64bit) is needed by ImageMagick-6.8.0-4.x86_64
    	libfftw3.so.3()(64bit) is needed by ImageMagick-6.8.9-3.x86_64
    	libfpx.so.1()(64bit) is needed by ImageMagick-6.8.9-3.x86_64
    	libgs.so.8()(64bit) is needed by ImageMagick-6.8.9-3.x86_64
    	liblzma.so.0()(64bit) is needed by ImageMagick-6.8.9-3.x86_64
    	libwebp.so.4()(64bit) is needed by ImageMagick-6.8.9-3.x86_64
    	libwmflite-0.2.so.7()(64bit) is needed by ImageMagick-6.8.9-3.x86_64
    

    需要安装 OpenEXR-devel sudo yum install OpenEXR-devel 提示无此安装包,

    查看现有的 yum repositories, 命令: yum repolist 没有rpmforge, 需要安装额外的rpm repository: http://repoforge.org 根据提示页 http://repoforge.org/use/, 下载针对Centos5的repository: x86_64 http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el5.rf.x86_64.rpm 安装命令 rpm -i rpmforge-release-0.5.3-1.el5.rf.*.rpm 再执行 sudo yum install OpenEXR-devel 就可以了 然后 sudo yum install fftw3-devel (libfftw3) sudo yum install xz-libs (liblzma) 按ImageMagick 网站上的安装提示, 可以先安装 ImageMagick-devel, 将必备的包一次安装齐全, 然后再编译安装替换掉旧的 sudo yum install ImageMagick-devel 还是不行, 安装十全大补包!

    sudo yum install bzip2-devel freetype-devel libjpeg-devel libpng-devel libtiff-devel giflib-devel zlib-devel ghostscript-devel djvulibre-devel libwmf-devel jasper-devel libtool-ltdl-devel libX11-devel libXext-devel libXt-devel lcms-devel libxml2-devel librsvg2-devel OpenEXR-devel
    

    还是不行 最后, 以上的都是扯淡, 还是有两个so找不到, 最后发现, 最简单的方法原来是... 从源码编译...

    tar -zxvf ImageMagick-6.8.9-3.tar.gz 
    cd ImageMagick-6.8.9-3
    ./configure --prefix=/opt/ImageMagick-6.8.9-3
    sudo make
    sudo make install
    

    安装完后, 在/opt/ 下建一个软链

    sudo ln -s ImageMagick-6.8.9-3/ ImageMagick

    还得把yum安装了的旧版本删掉

    sudo yum remove ImageMagick ImageMagick-devel

    安装PHP的 Imagick扩展

    sudo /opt/php/bin/pecl install imagick

    中间会提示输入ImageMagick的安装路径, 使用 /opt/ImageMagick 然后修改 php.ini, 把新的扩展加上 重启httpd发现没有启用, 用ls -Z一看还是selinux的问题, 用命令重置

    sudo /sbin/restorecon imagick.so 然后重启就可以了

    Updated 2018-03-16

    命令行说明

    #举例
    convert +profile '*' [src]{file}.{ext} -quality 80 -resize '280x140^>' -gravity Center -crop 280x140+0+0 +repage [out]{file}_280x140.{ext}
    # 把一张图片按80的质量去压缩(jpg的压缩参数),同时按图片比例非强制缩放成不超过280x140的图片.居中裁剪280x140,去掉图片裁减后的空白和图片exif信息,通常这种指令是为了保证图片大小正好为280x140
    
    参数说明
    -quality   图片质量,jpg默认99,png默认75
    -resize
      100x100      高度和宽度比例保留最高值,高比不变
      100x100^     高度和宽度比例保留最低值,宽高比不变
      100x100!      宽度和高度强制转换,忽视宽高比
      100x100>     更改长宽,当图片长或宽超过规定的尺寸
      100x100<     更改长宽 只有当图片长宽都超过规定的尺寸
      100x100^>   更改长宽,当图片长或宽超过规定的尺寸。高度和宽度比例保留最低值
      100x100^<   更改长宽,只有当图片长宽都超过规定的尺寸。高度和宽度比例保留最低值
      100             按指定的宽度缩放,保持宽高比例
      x100          按指定高度缩放,保持宽高比
    
    -gravity NorthWest, North, NorthEast, West, Center, East,  SouthWest, South, SouthEast截取用的定位指令,定位截取区域在图片中的方位
    -crop 200x200+0+0 截取用的截取指令 ,在用定位指令后,按后两位的偏移值偏移截取范围左上角的像素后,再按前两位的数值,从左上角开始截取相应大小的图片
    +repage 去掉图片裁减后的空白
    -dissolve 30 设定组合图片透明度dissolve示例
    +/-profile * 去掉/添加图片exif信息

    常用命令

    convert +profile '*' [src]{file}.{ext} -quality 90 -resize '700>' /data/tony/watermark_1.png -gravity southeast -compose Dissolve -composite [out]{file}_1024x1024.{ext}
    
    convert +profile '*' [src]{file}.{ext} /data/watermark_1.png -gravity southeast -geometry +10+10 -composite [src]{file}.{ext}
    
    convert +profile '*' [src]{file}.{ext} -coalesce -resize '950x135>' [out]{file}_950x135.{ext}
    
    convert +profile '*' [src]{file}.{ext} -resize '650x500>' miff:- | composite +profile '*' -dissolve 30 -gravity southeast /data/tony/watermark_1.png - [out]{file}_650x500.{ext}
    
    convert [src]{file}.{ext} -quality 80 -resize '190>' -background white -gravity center -extent 190x +repage [out]{file}_width190.{ext}
    
    # 将图片转化成长和宽不超过1024的图片
    convert +profile "*" -quality 75 -resize 1024x1024 kit_new_pcb_back.jpg kit_new_pcb_back_s.jpg

    .

  • 相关阅读:
    如何完全禁用或卸载Windows 10中的OneDrive
    ASP.NET Web API从注释生成帮助文档
    c#中使用easyUI的DataGrid组件
    第三方分页控件aspnetPager出现问题解决方法
    ActionResult派生类
    Razor引擎的转换数据类型
    ViewData与ViewBag比较
    .net开源后可以查看的源代码
    如何让一个类可以被foreach枚举?
    .NET Framework中Object基类有哪些方法?
  • 原文地址:https://www.cnblogs.com/milton/p/4215127.html
Copyright © 2020-2023  润新知