PNG8詳解
作者:佚名 來源:163 UED Team 時間:2009-09-29 類別:網頁理論
Gif格式特點
- 透明性
Gif是一種布爾透明類型,既它可以是全透明,也可以是全不透明,但是它并沒有半透明(alpha 透明)。 - 動畫
Gif這種格式支持動畫。 - 無損耗性
Gif是一種無損耗的圖像格式,這也意味著你可以對gif圖片做任何操作也不會使 得圖像質量產生損耗。 - 水平掃描
Gif是使用了一種叫作LZW的算法進行壓縮的,當壓縮gif的過程中,像素是由上到下水平壓縮的,這也意味著同等條件下,橫向的gif圖片比豎向的gif圖片更加小。例如500*10的圖片比10*500的圖片更加小 - 間隔漸進顯示
Gif支持可選擇性的間隔漸進顯示
由以上特點看出只有256種顏色的gif圖片不適合照片,但它適合對顏色要求不高的圖形(比如說圖標,圖表等),它并不是最優的選擇,我們會在后面中看到png是最優的選擇。
Jpeg格式特點
- 透明性
它并不支持透明。 - 動畫
它也不支持動畫。 - 損耗性
除了一些比如說旋轉(僅僅是90、180、270度旋轉),裁切,從標準類型到先進類型,編輯圖片的原數據之外,所有其它操作對jpg圖像的處理都會使得它的質量損失。所以我們在編輯過程一般用png作為過渡格式。 - 隔行漸進顯示
它支持隔行漸進顯示(但是ie瀏覽器并不支持這個屬性,但是ie會在整個圖像信息完全到達的時候顯示)。
由上可以看出Jpeg是最適web上面的攝影圖片和數字照相機中。
Png格式特點
- 類型
Png這種圖片格式包括了許多子類,但是在實踐中大致可以分為256色的png和全色的png,你完成可以用256色的png代替gif,用全色的png代替jpg - 透明性
Png是完全支持alpha透明的(透明,半透明,不透明),盡管有兩個怪異的現象在ie6(下面詳細討論) - 動畫
它不支持動畫 - 無損耗性
png是一種無損耗的圖像格式,這也意味著你可以對png圖片做任何操作也不會使 得圖像質量產生損耗。這也使得png可以作為jpg編輯的過渡格式 - 水平掃描
像GIF一樣,png也是水平掃描的,這樣意味著水平重復顏色比垂直重復顏色的圖片更小 - 間隔漸進顯示
它支持間隔漸進顯示,但是會造成圖片大小變得更大
更多關于PNG
- PNG8
256色PNG的別名 - PNG24
全色PNG的別名 - PNG32
全色PNG的別名
其它圖片格式與PNG比較
眾所周知GIF適合圖形,JPEG適合照片,PNG系列兩種都適合。
- 相比GIF
PNG 8除了不支持動畫外,PNG8有GIF所有的特點,但是比GIF更加具有優勢的是它支持alpha透明和更優的壓縮。所以,大多數情況下,你都應該用PNG8不是GIF(除了非常小的圖片GIF會有更好的壓縮外)。 - 相比JPEG
JPEG比全色PNG具有更加好的壓縮,因此也使得JPEG適合照片,但是編輯JPEG過程中容易造成質量的損失,所以全色PNG適合作為編輯JPEG的過渡格式.
Png8的在ie中的怪異表現:
- 半透明的png8在ie6以下的瀏覽器顯示為全透明。
- Alpha透明的全色PNG(png32)在ie6中會出現背景顏色(通常是灰色)。
由上面可以總結:
(a)全透明的png8可以在任一瀏覽器正常顯示(就像gif一樣)。半透明的png8在除了ie6及其以下的瀏覽器下錯誤的顯示成全透明,其它瀏覽器都能正常顯示半透明。這個bug并不需要特殊對待,因為在不支持半透明的瀏覽器下只是顯示為全透明,對用戶體驗影響不大,它反而是透明gif的加強版。
(b)第二個bug沒有什么好的方法解決,只能通過影響性能的方法AlphaImageLoader與需要加特殊標簽(VML)。
因此得出結論就是:請使用PNG8。
Png8的軟件問題:
- Photoshop只能導出布爾透明的PNG8。
- Fireworks既能導出布爾透明的PNG8,也能導出alpha透明的PNG8.
- pngquant與pngnq這兩個命令行軟件可以轉換全色png為256色的png8。