Linux环境—JPEG/JPG/PNG图片转换WEBP格式(一)

Linux运行环境配置

一、扩展插件和工具准备:libwebp + ImageMagick + imagick jpegsrc

    1、libwebp:内部的 cwebp库 支持程序的编码和解码的WebP格式图像。http://www.linuxfromscratch.org/blfs/view/svn/general/libwebp.html
    2、ImageMagick:免费的创建、编辑、合成图片的软件。它可以读取、转换、写入多种格式的图片。图片切割、颜色替换、各种效果的应用,图片的旋转、组合,文本,直线,多边形,椭圆,曲线,附加到图片伸展旋转。http://www.imagemagick.org/download/
    3、imagick:供PHP调用ImageMagick功能的PHP扩展。使用这个扩展可以使PHP具备和ImageMagick相同的功能。http://pecl.php.net/package/imagick
    4、jpegsrc:jpegsrc是用软件实现JPEG图像编码、解码、转码。https://fossies.org/linux/misc/jpegsrc.v9c.tar.gz/

    注:百度云盘下载地址 https://pan.baidu.com/s/1htQKbVQ,密码:v8hp

二、配置安装

    1、安装webp库
        1)解压安装包:tar -zxvf  libwebp-0.6.1.tar.gz
        2)进入安装包:cd libwebp-0.6.1
        3)编译/安装 :./configure && make && make install
        4)配置链接  :ln -s /usr/lib64/libwebp.so.7.0.1 /usr/lib64/libwebp.so.7
                  ln -s /usr/lib64/libwebp.so.7.0.1 /usr/lib64/libwebp.so

     2、安装ImageMagick
        1)解压安装包:unzip ImageMagick-6.9.9-36.zip
        2)进入安装包:cd ImageMagick-6.9.9-36
        3)编译/安装 :./configure --prefix=/usr/local/imagemagick --with-webp
                  make && make install
        4)配置链接  :ln -s /usr/local/imagemagick/include/ImageMagick-6 /usr/local/imagemagick/include/ImageMagick
        5)环境变量:export MAGICK_HOME=/usr/local/imagemagick
        
        安装失败常见问题:
        1)问题:magick/.libs/libMagickCore-6.Q16.so: undefined reference to `jpeg_default_qtables'。
           方案:重新下载jpegsrc.v9c.tar.gz】,编译最新的【libjpeg
                (1)tar -xzvf jpegsrc.v9.tar.gz   
                (2)cd jpeg-9  
                (3)./configure   
                (4)make libdir=/usr/lib64    
                (5)make libdir=/usr/lib64 install
        2)问题:error while loading shared libraries: libMagickCore-6.Q16.so.1: cannot open shared object file: No such file or directory
           方案:执行如下命令
                 ldconfig /usr/local/lib
                 then run:convert -version

    3、安装imagick
        1)解压安装包:tar -zxvf imagick-3.4.3.tgz
        2)进入安装包:cd imagick-3.4.3
        3)扩展PHP模块:/usr/local/php/bin/phpize
                  export PKG_CONFIG_PATH=/usr/local/imagemagick/lib/pkgconfig
        4)编译/安装:./configure --with-php-config=/usr/local/php/bin/php-config --with-imagick=/usr/local/imagemagick
                 make && make install
        5)配置PHP扩展:vim /usr/local/php5/etc/php.ini # 最后一行添加【extension="imagick.so"

    4、重启服务
        1)重启 php-fpm:service php-fpm restart
        2)重启 nginx  :service nginx restart

三、测试运行环境
    
    1、PHPINFO包含 imagick 扩展:php -m
        Linux环境—JPEG/JPG/PNG图片转换WEBP格式(一)_第1张图片
    2、Linux转换命令: cwebp -q {int_q} {convert_img_path} -o {webp_img_path}
        1)int_q:图片质量 0-100
        2)convert_img_path:原图片绝对路径
        3)webp_img_path:转换后生成webp格式图片的绝对路径
        
        实例:cwebp -q 80 /data/img/convert.jpeg -o /data/img/convert.webp  # 执行完成后,浏览 /data/img/convert.webp

四、注意事项
    
    1、环境限制:目前仅针对 Linux 环境进行转换
    2、PHP环境 :配置允许执行【exec】系统函数
    3、允许转换格式:JPEG、JPG、PNG









你可能感兴趣的:(PHP总结,Linux总结)