爲什麼要優化圖片
想象一下,如果TTLSA每篇文章圖片都是1M,一篇文章有10個圖片,你看一篇文章是一種什麼體驗。不僅僅體驗差,TTLSA的CDN流量也是蹭蹭蹭的往上漲,漲的是流量,掉的是錢。一個圖片100k和1MB的現實的效果差不多,爲什麼不用100K呢
如何優化圖片
有如下幾種方法
-
打開大圖,QQ截屏然後保存下來
-
ngx_pagespeed插件,自動化優化圖片質量/尺寸
-
firework、ps等工具導出圖片
-
jpegoptim、pngcrush
介紹下第四種在linux下壓縮圖片,並且圖片質量不會太差,而且可以寫腳本批量壓縮圖片。
jpegotim壓縮圖片
安裝jpegotim
如果你有epel yum源,使用如下命令即可
壓縮圖片命令
|
# jpegoptim ttlsa.jpg
ttlsa.jpg
1425x823
24bit
N
JFIF
[OK]
1074449
-->
853514
bytes
(20.56%),
optimized.
|
可以看到ttlsa.jpg自動被壓縮了20.56%。
再壓縮一次
| # jpegoptim ttlsa.jpg ttlsa.jpg 1425x823 24bit N JFIF [OK] 853514 --> 853514 bytes (0.00%), skipped. |
圖片已經被壓縮過了,所以提示跳過,不需要在被壓縮。
提供一個批量壓縮的腳本
|
for
i
in
/data/site/image.ttlsa.com/images/*.jpg;
do
jpegoptim
$i;
done
|
pngcrush優化PNG圖片
項目地址:http://pmt.sourceforge.net/pngcrush/
| # wget http://downloads.sourceforge.net/project/pmt/pngcrush/1.7.88/pngcrush-1.7.88.tar.gz # tar -xzvf pngcrush-1.7.88.tar.gz # cd pngcrush-1.7.88 # make # cp pngcrush /usr/bin |
pngcrush使用語法
|
usage:
pngcrush
[options
except
for
-e
-d]
infile.png
outfile.png
pngcrush
-e
ext
[other
options]
file.png
...
pngcrush
-d
dir/
[other
options]
file.png
...
pngcrush
-ow
[other
options]
file.png
[tempfile.png]
pngcrush
-n
-v
file.png
...
options:
-bail
(bail
out
of
trial
when
size
exceeds
best
size
found
-bit_depth
depth
(deprecated)
-blacken
(zero
samples
underlying
fully-transparent
pixels)
-brute
(use
brute-force:
try
148
different
methods)
........更多內容請自己看幫助......
|
pngcrush簡單命令
| pngcrush -brute -e "myimage_compressed.png" myimage.png .........省略..... Best pngcrush method = 123 (ws 15 fm 4 zl 9 zs 1) = 124820 for output to ttlsattlsa_new.png (1.63% critical chunk reduction) (1.63% filesize reduction) CPU time decoding 1.560, encoding 7.640, other 0.030, total 9.230 sec. |
批量優化PNG圖片
|
pngcrush
-brute
-d
"/data/site/image.ttlsa.com/images"
*.png
|
轉自運維生存時間 http://www.ttlsa.com/linux/optimizing-jpg-png-images-on-linux/