1. 程式人生 > >Linux環境—JPEG/JPG/PNG圖片轉換WEBP格式(一)

Linux環境—JPEG/JPG/PNG圖片轉換WEBP格式(一)

Linux執行環境配置

一、擴充套件外掛和工具準備:libwebp +ImageMagick + imagickjpegsrc

    2、ImageMagick:免費的建立、編輯、合成圖片的軟體。它可以讀取、轉換、寫入多種格式的圖片。圖片切割、顏色替換、各種效果的應用,圖片的旋轉、組合,文字,直線,多邊形,橢圓,曲線,附加到圖片伸展旋轉。http://www.imagemagick.org/download/    3、imagick:供PHP呼叫ImageMagick功能的PHP擴充套件。使用這個擴充套件可以使PHP具備和ImageMagick相同的功能。http://pecl.php.net/package/imagick
二、配置安裝    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.so2、安裝ImageMagick
        1)解壓安裝包:unzip ImageMagick-6.9.9-36.zip        2)進入安裝包:cdImageMagick-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/libthen 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:servicephp-fpm restart        2)重啟 nginx  :servicenginx restart三、測試執行環境    1、PHPINFO包含 imagick 擴充套件:php -m            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