我对这个有点难住了。我使用 Protovis(一个 JS 库)渲染 SVG 可视化,它在 Chrome 和 Firefox 中运行得非常好。我将渲染的 SVG 保存在我的服务器上,并尝试使用 PHP 函数在“图库”视图中重新渲染它,但这在 Firefox 中失败。我只看到 SVG 中的文本,但看不到 SVG。
我保存完整的 svg 内容,如下所示:
<svg height="220" width="880" stroke-width="1.5" stroke="none" fill="none" font-family="sans-serif" font-size="10px"><g transform="translate(30, 10)"><line stroke-width="1"
我尝试过使用<object>
但这只是提示 Firefox 下载它找不到的插件。
它可以在 FF4 beta 中运行,但我不明白为什么它甚至在 Firefox 3.6 中也不能运行。这是我应该放弃的事情吗?您可以在这里查看演示:
http://www.rioleo.org/protoviewer http://www.rioleo.org/protoviewer(点击“图库”)
再次感谢!
内联 SVG 仅在两种情况下在 Firefox 中有效:
- Firefox 有实验性HTML5解析器 http://hacks.mozilla.org/2010/05/firefox-4-the-html5-parser-inline-svg-speed-and-more/已启用(即您使用的是 4.0 nightly)
- 正在解析的文档不是 HTML,而是XHTML http://www.greytower.net/archive/articles/xhtmlcontent.html (
Content-type: application/xhtml+xml
)
The object
Rob 建议的方法应该有效,只要单独的 SVG 文件来自您的服务器Content-type: image/svg+xml
并且您使用正确的语法:
<object data="foo.svg" type="image/svg+xml" width="400" height="300">
See Damian Cugley 的文章“SVG:对象还是嵌入?” http://www.alleged.org.uk/pdc/2002/svg-object.html有关其他一些选项的详细信息,或使用SVGWeb http://code.google.com/p/svgweb/.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)