Gif格式特點:
- 透明性,Gif是一種布爾透明類型,既它可以是全透明,也可以是全不透明,但是它並沒有半透明(alpha透明)。
- 動畫,Gif這種格式支持動畫。
- 無損耗性,Gif是一種無損耗的圖像格式,這也意味着你可以對gif圖片做任何操作也不會使得圖像質量產生損耗。
- 水平掃描,Gif是使用了一種叫作LZW的算法進行壓縮的,當壓縮gif的過程中,像素是由上到下水平壓縮的,這也意味着同等條件下,橫向的gif圖片比豎向的gif圖片更加小。例如500*10的圖片比10*500的圖片更加小
- 間隔漸進顯示,Gif支持可選擇性的間隔漸進顯示
由以上特點看出只有256種顏色的gif圖片不適合照片,但它適合對顏色要求不高的圖形(比如說圖標,圖表等),它並不是最優的選擇,我們會在后面中看到png是最優的選擇。
Jpeg(jpg)格式特點:
- 透明性,它並不支持透明。
- 動畫,它也不支持動畫。
- 損耗性,除了一些比如說旋轉(僅僅是90、180、270度旋轉),裁切,從標准類型到先進類型,編輯圖片的原數據之外,所有其它操作對jpeg圖像的處理都會使得它的質量損失。所以我們在編輯過程一般用png作為過渡格式。
- 隔行漸進顯示,它支持隔行漸進顯示(但是ie瀏覽器並不支持這個屬性,但是ie會在整個圖像信息完全到達的時候顯示)。
由上可以看出Jpeg是最適web上面的攝影圖片和數字照相機中。
Png格式特點:
- 類型,Png這種圖片格式包括了許多子類,但是在實踐中大致可以分為256色的png和全色的png,你完成可以用256色的png代替gif,用全色的png代替jpeg
- 透明性,Png是完全支持alpha透明的(透明,半透明,不透明),盡管有兩個怪異的現象在ie6(下面詳細討論)
- 動畫,它不支持動畫
PNG圖片格式現在包含三種類型:
- PNG8256色PNG的別名
- PNG24全色PNG的別名
- PNG32全色PNG的別名
當然,我也知道你的想法,“但是Photoshop也能生成帶透明通道的PNG圖片!”我也知道,它只是表面上這么說是PNG24,讓我也產生困惑了。
作為一個傷感的Fireworks倡導者,我只使用PNG32支持附帶alpha通道的真色彩圖片。不管怎樣,如果你習慣使用Photoshop,你就應該知道,Photoshop在“存儲為WEB格式”中只提供PNG8和PNG24兩種PNG格式。
我敢肯定你經常會勾選“支持透明”選項,以獲得帶有透明度的PNG圖片,但是這樣你就獲取了一張PNG32圖片。——Photoshop只是覺得把PNG32這個名稱給隱藏掉了。。。。
對png8的誤解
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.