安装libjpeg,让php支持jpeg图片的裁切缩放等操作

Posted ayao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安装libjpeg,让php支持jpeg图片的裁切缩放等操作相关的知识,希望对你有一定的参考价值。

php项目中,使用到图片裁切、缩放等功能时,就需要php启用gdlibjpeg扩展,否则imagecreatefromjpeg 类似函数不可用。可能是因为jpeg的版权问题,yum安装的gd库默认不支持jpeg有关操作,需要手工安装jpeg library(参见php官网:https://www.php.net/manual/en/image.requirements.php)。

技术图片

php官网关于让gd支持jpeg的叙述

 

按照php官网指引,打开http://www.ijg.org/,下载最新版本,当前是 jpegsrc.v9d.tar.gz(下载链接:http://www.ijg.org/files/jpegsrc.v9d.tar.gz)。逐条执行以下命令,解压、安装:

tar -zxvf jpegsrc.v9d.tar.gz

cd jpeg-9d

./configure --enable-shared 官网提示,必须添加此参数

make

sudo make install 此时,将libjpeg安装到了默认目录:/usr/local/lib

 

接下来,要使库libjpeg.so全局可用,否则,从php源码配置时会报错,查看日志可见提示libjpeg.so.9找不到。我们这样操作:

sudo vi /etc/ld.so.conf

加入一行:/usr/local/lib

保存后执行:sudo ldconfig -v

 

接下来安装php即可:

cd php-5.6.40

./configure --prefix=/usr/local/php5_6 --enable-fpm --with-mhash --enable-mbstring --with-curl --disable-rpath --with-pdo-mysql --enable-inline-optimization --with-bz2 --with-zlib --enable-pcntl --without-sqlite3 --without-pdo-sqlite --disable-mbregex --enable-shared --with-gd --with-jpeg-dir --with-png-dir --with-zlib-dir --with-freetype-dir --enable-zip

make -j2 && make install

 

安装完成后,在phpinfo中能看到JPEG Support enabled libJPEG Version 9 compatible类似文字,说明gdjpeg功能安装成功(如图)。

技术图片

gdjpeg功能安装成功

 

 

技术图片

 

以上是关于安装libjpeg,让php支持jpeg图片的裁切缩放等操作的主要内容,如果未能解决你的问题,请参考以下文章

图片裁切插件jCrop的使用心得

netcore使用ImageSharp裁切图片

前端裁切图片插件之cropper介绍

解决使用 libjpeg 保存图片时因磁盘写入失败导致程序退出的问题

Linux应用开发-libjpeg库交叉编译与使用

Linux应用开发-libjpeg库交叉编译与使用