2011-03-16 51 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

相关问题