2011-03-16 49 views
4

我最近開始在我的網站中使用svg圖像。其中一些是複雜的,相當大,所以我開始壓縮它們。它們壓縮得非常好。使用SVGZ而不是SVG的缺陷是什麼?

爲什麼有一個不是使用SVGZs(而不是未壓縮版本)?是否有我應該知道的衆所周知的陷阱?

回答

5

只要您的網絡服務器設置了正確的Content-Encoding HTTP標頭,它就可以在支持SVG的所有瀏覽器中使用。

我知道的一個缺陷是,如果你想能夠從本地打開svgz文件(即:不使用web服務器)。這在所有瀏覽器中都不起作用。

此外,如果您的svg文件很大,那麼您應該考慮使用SVG Scour或類似的方法對它們進行預處理。像Illustrator和Inkscape這樣的矢量圖形編輯器在文件中輸出顯示冗餘數據(二進制blob或自定義xml標記)是很常見的。

+0

「只要您的網絡服務器設置了正確的Content-Encoding HTTP頭,它就可以在支持SVG的所有瀏覽器中使用。」這就是爲什麼Chrome(最新)給出了一個警告:「資源解釋爲文檔,但是通過MIME類型image/svg + xml傳輸。」 ? – cfouche 2011-03-17 08:04:34

+0

好問題,也許分開問一個呢? (或bugreport到http://bugs.webkit.org?) – 2011-03-18 07:59:27

1

是否適用於桌面瀏覽器,移動設備?我知道Opera至少自8.0開始支持SVGZ(甚至更早)。

什麼服務器? Apache,IIS?您可能必須配置它和/或與.htaccess混淆。以下是Apache的操作指南:http://kaioa.com/node/45

請記住,如果客戶端支持,服務器可能已經壓縮了您的內容,因爲SVGZ只是應用了gzip壓縮的普通SVG。

+0

桌面瀏覽器 - 根據我的僱主的政策,這些網站只能使用IE,Chrome和FF。我看過Opera和Safari,但他們似乎不像其他三種瀏覽器一樣處理SVG ...... IIS服務器。 – cfouche 2011-03-17 06:37:48

+1

Safari和Chrome應該具有相同的處理方式(除非它自然是舊版本的Safari)。 – Marcin 2011-03-28 16:32:06

相關問題