13 個免費的 PNG 影像的優化和壓縮工具

oschina發表於2013-11-09

  影像格式有許多種不同型別,在網際網路上最常見的有JPEG、GIF、BMP、TIFF和PNG。每一種影像格式都有它自己的用途,比如GIF是用於動畫的,JPEG是用於高清圖片的,這種圖片在儲存或者調整大小後會自動降低其清晰度,而我們最喜愛的PNG最適合於小型且透明的圖片。PNG檔案的另一個巨大的優勢是這些檔案都是無損的,這就意味著你可以在不丟失清晰度的情況下對PNG檔案進行壓縮。

  你在網際網路上可以很容易地找到壓縮PNG檔案的工具,而且大多數,而不是全部都會由於採用不同的演算法而生成不同大小的檔案,除非這些工具採用了相同的庫或者技術才會生成相同大小的檔案。最大程度地減少影像檔案大小可以節省傳輸頻寬、減少下載時間,甚至可以獲得較高的谷歌頁面訪問速度的效能分,這是因為“優化影像”是達到這些目標的第一選擇。在這篇文件裡,我們將對13個免費的PNG壓縮工具(有線上壓縮工具、命令列壓縮工具和桌面式壓縮工具)進行測試,來找到可生成最小檔案大小的那個工具。

  我們將使用下面所列出的13個免費的影像壓縮工具對一個8位的和一個24位的PNG檔案進行壓縮。所列的工具包含命令列工具、桌面程式和線上服務。命令列工具在對大量檔案進行自動處理的時候較靈活,不過它要求你要鍵入全部的命令,包括命令選項和路徑。桌面工具較容易使用,這種程式具有圖形使用者介面,它通常只需要幾個滑鼠點選就可以完成壓縮。最後是線上服務,它是位於遠端伺服器上的應用,壓縮處理過程是在遠端伺服器上進行的,而且使用者不需要安裝任何第三方軟體。

  命令列工具

  1.advpng

advpng

  advpng是AdvanceCOMP應用的一部分,AdvanceCOMP包含有多個對PNG、ZIP、MNG和GZ檔案進行再次壓縮的免費的工具。advpng從2005年起就沒有更新過,不過它的壓縮速度和結果卻很令你吃驚。具有較慢硬體配置的舊一點的機器進行壓縮要花稍長的時間,而新的多核CPU只需一秒就可生成令你驚訝的結果。

  advpng的最大壓縮的命令如下:

advpng.exe -z4 file.png

  點此處下載AdvanceCOMP.

  2.OptiPNG

optipng

  OptiPNG是另一個開放原始碼的命令列PNG壓縮工具,它既支援Windows作業系統,也支援Linux作業系統。它的穩定版本和開發版本都可以下載。要特別注意的是:穩定版本和開發版本的最大壓縮的命令列稍有不同。OptiPNG穩定版本的最高壓縮比是 -o7,而開發版本卻是-o6。如果你試圖對開發版本強制使用-o7,那麼你將仍然得到的是同使用-o6一樣的大小的檔案。

  OptiPNG穩定版本的最大壓縮的命令如下:

optipng.exe -o7 file.png

  OptiPNG開發版本的最大壓縮的命令如下:

optipng-hg-latest-win32 -o6 file.png

  點選此處下載OptiPNG。

  3.Pngcrush

Pngcrush

  pngcrush也是一個命令列工具,它試圖使用不同的壓縮比和PNG過濾方法對PNG影像進行優化。如果你使用了-brute選項,那麼Pngcrush將用148種方法對這個影像進行測試,以找到最適合於這張圖片的壓縮方法。

  Pngcrush的最大壓縮命令如下:

Pngcrush.exe -brute file.png output.png

  點選此處下載Pngcrush。

  4.PngOptimizerCL

PngOptimizerCL

  PngOptimizer有一個簡單的圖形使用者介面程式,這時你要做的就是把你要壓縮的影像拖到這個程式的視窗就行,同時,pngOptimizer還是一個可以在命令列提示符下執行的命令列工具。它除了通過清除PNG上的錯誤或者無用資訊來減小PNG檔案大小外,還可以對今天已經不常見的動畫型PNG格式(apng)進行處理。為了對影像檔案進行優化,你要麼指定一個確切的檔名,要麼使用*號萬用字元。

  PngOptimizerCL的最大壓縮命令如下:

PngOptimizerCL.exe -file:”file.png”

  點選此處下載PngOptimizerCL。

  5.PNGOUT

PNGOUT

  不像大多數命令列PNG優化工具,PNGOUT不是開放原始碼的,這是因為它的壓縮演算法已經併入它們的商業GUI版本PNGOUTWin裡,PNGOUTWin既支援批量處理,也支援多核CPU。雖然它不是開放原始碼的,但是你仍可以找到已經編譯好的Windows、Linux、BSD和Mac OS X上的二進位制檔案。PNGOUT是最容易是使用的壓縮工具之一。因為在預設情況下,即不指定任何命令列選項的情況下,它使用了最高壓縮比的Xtreme壓縮演算法。

  PNGOUT最大壓縮命令如下:

pngout.exe file.png

  點選此處下載PNGOUT。

  6.ScriptPNG

ScriptPNG

  ScriptPNG實際上是一個批處理檔案,它可以使用高達10種PNG壓縮演算法對影像檔案進行優化。選擇超強選項數字9將使用生成最小檔案的最大壓縮演算法,不過完成這個優化過程需要花費更多的時間。你需要做的所有就是把PNG檔案從Explore拖拉到這個程式,然後在9個選項中選擇一個。

  點選此處下載ScriptPNG。

  7.TruePNG

TruePNG

  TruePNG不像上面所介紹的某些PNG壓縮工具,它只支援PNG檔案。 上面所介紹的一些PNG壓縮工具在能夠獲得更小檔案的情況下,總試圖轉換其他影像檔案格式,比如JPEG和GIP,為PNG格式。

  TruePNG最大壓縮命令如下:

TruePNG.exe input.png /o max

  點選此處下載TruePNG。

  桌面軟體

  8.PNGGauntlet

PNGGauntlet

  PNGGauntlet實際上是一個前端工具,它使用三個不同的PNG優化工具(PNGOUT、OptiPNG和DeflOpt)對PNG檔案進行了多次壓縮,而不是通過所見的只是用一個工具。三個壓縮工具的使用確實增加了壓縮PNG檔案所花費的時間,不過肯定生成了更小的檔案。PNGGauntlet裡的一個很好的功能是在進行批量處理的時候能夠自動對多個檔案進行排隊處理。工具選單裡的預設選項已經是最佳(最大)壓縮設定,除非你打算保留PNG後設資料、使用灰度色彩模式等等時候才更改這個值。執行這個軟體需要安裝微軟的.NET Framework 4。

  點選此處下載PNGGauntlet。

  線上服務

  9.Kraken

Kraken.io

  Kraken是一個免費的線上影像優化工具,它既支援無損優化模式,也支援有損優化模式。為了對影像檔案進行優化,你要麼選擇一個你計算機上的影像原始檔,要麼貼上上一些URL。然後PNG影像檔案就會被"kraked",處理完成後就會把結果檔案上傳到實現臨時1小時儲存的它們自己的CDN上。Kraken.io所做的一件很好的事情就是可以使用有限的免費的API對Chrome和Firefox進行擴充套件。使用高階API的付費計劃將在幾周內釋出。依據我們的測試,Kraken的免費壓縮可以與付費的PunyPNG的極限壓縮相媲美。

  點選此處訪問Kraken。

  10.pngoptimizer.com

pngoptimizer.com

  pngoptimize.com是一個非常簡單的站點,它允許你對最大為3MB的影像檔案進行上傳和壓縮。點選瀏覽按鈕,就可以查詢要上傳的影像檔案,然後點選非常靠近廣告條的優化按鈕,從測試結果來看,我們能夠確定pngoptimizer.com是使用OptiPNG進行PNG檔案的壓縮的。

  點選此處訪問pngoptimizer.com

  11.PunyPNG

PunyPNG

  PunyPNG獲得了大量的關注,因為與其他線上釋出的競爭者一一比較,PunyPNG去除了更多的位元組。這個站點提供免費壓縮,當你註冊為專業級使用者的話,你將自動使用極強的且有損的壓縮演算法。要對PNG影像檔案進行壓縮,請點選上傳按鈕,免費使用者可以每次選擇上傳15個檔案,每個檔案最大為150KB。而專業級使用者可以每次選擇上傳50個檔案,每個檔案最大為500KB。

  點選此處可訪問punyPNG。

  12. Smush.it

  Smush.it 是一個使用最多的線上優化工具,它託管在雅虎開發網,而且這個功能還包含在YSlow中。你會發現幾乎每一個應用都支援Smush.it,比如,通過一個WordPress外掛,你可以很容易甚至自動的美化你上傳的圖片。在Smush.it上有兩種方法壓縮你的圖片,一個是從你的電腦上上傳圖片,或者提供圖片的確切連結。

  訪問Smush.it

  13. TinyPNG

  TinyPNG為了達到更小的檔案大小進行了有失真壓縮,儘管在質量上有輕微的下降,但裸眼看不出來。所以如果你有24位PNG影像,在TinyPNG下壓縮將變成為一個8位的PNG檔案。它支援一次處理20張圖片,每張大小在3MB內。

  訪問TinyPNG

  PNG壓縮測試

8-bit PNG compress test

  兩個8位PNG檔案的壓縮測試結果

24-bit PNG compress test

  兩個24位PNG檔案的壓縮測試結果

  總結:ScriptPNG對24位PNG檔案和8位PNG檔案都能生成最小的壓縮檔案。注意:ScriptPNG僅僅是一個指令碼,它是用幾個壓縮工具對PNG檔案進行了多次壓縮優化,因此它與其它命令列工具相比在處理上要花費更長的時間。還需注意:雖然PNGOUT對8位PNG檔案壓縮的真的很好,但對24位PNG檔案的壓縮卻是最差的。

  上面雖然沒有提到,但我們確信線上服務PNGoptimizer.com使用了OptiPNG進行PNG檔案壓縮的,因為這兩種方法在上面所進行的所有四個測試裡都生成了完全相同大小的檔案。我們的測試還表明:Kraken圖形優化器同只有PunPNG付費使用者才可使用的PunyPNG極限壓縮方法一樣都生成同樣大小的檔案。

  對使用命令列使用者的提示。如果你需要頻繁的使用命令列工具而不想每次重複的輸入完整的命令列來優化或者壓縮PNG圖片,這裡有一個簡單的方法,只需要點選兩下滑鼠即可。你需要做的事新增一個新的動作在內容目錄,它只在你點選到PNG檔案時顯示。

  1.下載ExtMan,解壓並執行可執行檔案;

  2.預設的程式語言是德文,你只需要點選一下美國國旗的表,這樣視窗就會切換成英文;

  3. 往下滾動滾動條找到擴充名“png”,檔案型別為“PNG圖片”;

  4.雙擊png擴充名然後點選New Action按鈕。

  5.你可以在程式欄中輸入任何東西,可以是PNG壓縮工具的名字或者僅僅是Compress如果你想在命令列中只需要一個單詞的話。

  6.至於“進行處理的應用”框, 你需要做的就是根據與你所使用的命令列工具的不同輸入以下命令列。如果你還沒有把命令列工具放置在C:\盤的根目錄下,那麼請更改工具所在路徑。

ExtMan Action Process

  • advpng: c:\advpng.exe -z4 "%1"(將覆蓋已有檔案)
  • OptiPNG: c:\optipng.exe -o7 -backuup "%1" (給已有檔案建立備份檔案,增加.bak副檔名)
  • pngcrush: c:\pngcrush.exe -brute -e_compressed "%1" (以原始檔名加_compressed.png的檔名儲存壓縮所得PNG檔案)
  • pngOptimizerCL: c:\PngOptimizerCL.exe -BackupOldPngFiles -file:%1"(通過給檔名開始增加下劃線字元來備份原來的PNG檔案)
  • PNGOUT: c:\pngout.exe "%1" out.png(儲存壓縮所得的PNG檔案為out.png)
  • ScriptPNG: c:\scriptpng\ScriptPNG.cmd "%1" (按數字9鍵,接著就覆蓋了已有的PNG檔案)
  • TruePNG: c:\TruePNG.exe "%1" /o max /out out.png(儲存壓縮所得的PNG檔案為out.png)

  7.點選Save按鈕後將關閉Action視窗,然後再點選Save按鈕關閉Edit視窗。

  8.無論什麼時候你在PNG檔案上點選滑鼠右鍵,你將在彈出的選單上看到多了一個命令,它就是用來壓縮PNG檔案的。

Compress PNG right click context menu

  原文地址:http://www.raymond.cc/blog/4-free-tools-to-optimize-and-compress-png-images-without-loosing-quality/

相關文章