在实例的生产环境中有时候我们的网站会用到比较小的图片,但是提供的图片相对来说比较大。像我之前文章中,我做了ImageMagick的安装和简单的使用实例,但是处理1M左右大小的图片最后还回有200k左右大小,当然对于生产环境还不尽满意。这时候就需要通过改变图片格式的方式来改变图片的大小。
参照之前的文章:http://xiaoxiaozhou.blog.51cto.com/4681537/1903499,需要做些补充说明。我们如果想要把png格式的图片转换为jpg格式的图片,需要做哪些工作:
1、编译png库支持源码
2、编译jpg库支持源码
3、编译ImageMagick源码
这里需要注意的是编译图片支持库源码一定要在编译ImageMagick的前边进行
编译环境
编译png库支持源码
# tar -zxf jpegsrc.v6b.tar.gz
# cd jpeg-6b/
# ./configure
# make && make install
编译jpg库支持源码
# tar -zxf libpng-1.5.8.tar.gz
# cd libpng-1.5.8/
# ./configure
# make && make install
编译ImageMagick源码
# tar -zxf ImageMagick.tar.gz
# cd ImageMagick-7.0.5-0/
# ./configure --prefix=/apps/ImageMagick --enable-share --enable-static LDFLAGS="-L/usr/lib64" CPPFLAGS="-I/usr/include"
显示的对于png和jpg支持的相关信息
JPEG v1 --with-jpeg=yes yes
PNG --with-png=yes yes
# make && make install
# ln -s /apps/ImageMagick/bin/convert /usr/bin/convert
压缩图片示例:
要处理的图片大小
# du -sh BG10.png
1.2M BG10.png
处理图片,格式分别是png和jpg,其他条件相同
# convert BG10.png -resize 500 test1/BG100.png
# convert BG10.png -resize 500 test1/BG100.jpg
对比处理结果
test1 # du -sh *
76K BG100.jpg
208K BG100.png
可以发现jpg格式的图片会小更多