CentOS系统下图片压缩方案

《CentOS系统下图片压缩方案》

Google webp

WebP是一种现代图像格式,可为Web上的图像提供出色的无损和有损压缩。使用WebP,网站管理员和Web开发人员可以创建更小,更丰富的图像,使网络更快。 安装

# yum -y install libwebp-devel libwebp-tools

//使用cwebp命令行上PNG或JPEG图像文件转换为WebP的格式。您可以使用以下命令将PNG图像文件转换为质量范围为80的WebP图像:
# cwebp -q 75 image.png -o image.webp

# gif2webp -lossy -q 40 image.gif -o image.gif


//后记
这是一个神奇的模块, 当你将参数设为0时,你会发现,居然还能看,虽然效果不是很好,但但但但这是目前市面上任何一个模块都无法比拟的!!!!压缩比达到70%,震惊呀😲😲😲😲😲!!!!!!
我想应该就是她了!!!!
//编译安装
//官方下载地址:
https://storage.googleapis.com/downloads.webmproject.org/releases/webp/index.html
# wget https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-1.1.0-linux-x86-64.tar.gz

# tar -zxvf libwebp-1.1.0-linux-x86-64.tar.gz
# mv /root/libwebp-xxxx /usr/local/libwebp
# ln -s /usr/local/libwebp/bin/cwebp /usr/bin/cwebp
# ln -s /usr/local/libwebp/bin/gif2webp /usr/bin/gif2webp

# cwebp -version
# gif2webp -version
cwebp1.2.1版本的安装:
官网:https://storage.googleapis.com/downloads.webmproject.org/releases/webp/index.html
# wget https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-1.2.1.tar.gz
#tar -zxvf libwebp-1.2.1.tar.gz
#mv /root/libwebp-xxxx /usr/local/libwebp
#cd /usr/local/libwebp1.2.1
#./autogen.sh
#./configure
#make
#make install
#cd /usr/local/libwebp/examples
#./cwebp -version
# ln -s /usr/local/libwebp/examples/cwebp /usr/local/bin/cwebp
# ln -s /usr/local/libwebp/examples/gif2webp /usr/local/bin/gif2webp
cwebp压缩一张图片为WebP格式。输入的数据可以是PNG, JPEG, TIFF, WebP 或者 raw
其中option可选:
-loss(有损压缩,默认),
-lossless(无损压缩)

-o string
制定输出文件名称。如果省略,cwebp将进行压缩,输出静态报告,使用 “-” 作为一个输出名称,将直接输入到文件

-q float
为RGB通道指定压缩参数0-100, 默认值75
如果是在有损压缩中(默认为有损压缩)参数越小,图片质量越低,文件越小。最好的质量参数是100
如是是在无损压缩中(特别是指定了 -lossless 参数),小的参数会获得快的压缩速度,但是生产出较大的文件。最大的压缩值为100.

-size int
得到指定质量的图片 单位byte

-resize width height
调整源文件的宽高。如果任意一个宽或者高的参数为0,那么将按比例计算。

//其他
-z int
切换无损压缩模式级别从0-9,0最快,9最慢。速度越快文件越大。比较好的默认值是6. 这个参数是一个预定义压缩质量快捷阐述。如果参数 -q 或者 -m 被随后用到,这个-z 就无效了。

-m int
制定压缩模式。这个参数控制了编码的速度,压缩文件大小,质量。值范围为0-6. 默认4. 值越大,花费时间越大用来检查额外的编码能力和质量。小的值会产生快的压缩速度,大的文件和低的压缩质量。

-f int
指定解过滤器的强度,介于0(不过滤)和100(最大过滤)之间。 值为0将关闭任何过滤。 较高的值将增加在解码图片后应用的滤波过程的强度。 值越高,图片将显得越平滑。 典型值通常在20到50的范围内。

-sharpness int
指定过滤的清晰度(如果使用)。 范围是0(最清晰)至7(最不清晰)。 默认值为0。

-strong
使用强过滤(如果通过-f选项使用了过滤)。 默认情况下,强过滤处于启用状态。
gif2webp  - 将GIF图像转换为WebP

-lossy 使用有损压缩对图像进行编码。

-mixed 混合压缩模式:通过启发式地为每个帧选择有损或无损压缩来优化图像压缩。

-q float 指定0到100之间RGB通道的压缩因子。默认值为75.在无损压缩(默认)的情况下,较小的因子可以实现更快的压缩速度,但会生成更大的文件。通过使用值100来实现最大压缩。在有损压缩的情况下(由-lossy选项指定),小因子会产生质量较低的较小文件。使用100的值可以获得最佳质量。

-min_size 尝试通过删除额外的关键帧尽可能地减小输出文件的大小(以在解码过程中可能使用更多资源为代价)。

-mt 如果可能,使用多线程进行编码。

-quiet 不要打印任何东西。

OptiPNG

OptiPNG是一种PNG优化器,可将图像文件重新压缩为更小的尺寸,而不会丢失任何信息。同时还可以压缩.bmp .gif等格式,安装方法如下:

#请先确保已经安装epel源,然后直接yum安装
yum -y install optipng
如果不出意外,安装成功后可以输入optipng -V查看当前版本
#optipng -V


//直接输入命令optipng xxx.png来压缩一张.png的图片
//optipng 还有更多的参数,可以输入optipng -h来查看帮助。

//后记
效果不明显,只能压缩png , 不支持jpg,感觉能压缩10%左右吧(差强人意)

JpegOptim

jpegoptim 是一个用来优化 JPEG 文件的工具,提供无损的优化(基于哈夫曼表),同时也可设置质量因子实现的有损优化

jpegoptim默认模式下 , 会删除一些元素信息 , 作者信息等 , 测试过能压缩6~7%左右 , 如果压缩后的图片比原图大则跳过不处理 , jpegoptim的工作模式是删除原图并在原位置生成新图(即替换原图)

# yum -y install jpegoptim
$ jpegoptim filename.jpeg
$ jpegoptim [options] filename.jpeg

# jpegoptim 01.jpg

无论哪种图片压缩方案都无法真正做到100%无损,只能尽可能不降低图片质量的情况下减小图片体积。建议大家对网站图片进行适当压缩,提高网站速度。如果您还有更优秀的压缩方案,请留言推荐。

pngcrush

//下载地址:https://sourceforge.net/projects/pmt/files/pngcrush/ 不好用
点赞

发表评论

邮箱地址不会被公开。 必填项已用*标注