相关疑难解决方法(0)

在浏览器中显示矢量图形

我需要在我正在处理的网站上显示一些交互式(附带DOM侦听器等和事件处理)矢量图形.有一个针对SVG的W3C建议,虽然这种格式仍然无法被Internet Explorer支持认可(对于公共网站而言).IE处理VML,甚至还有javascript库根据浏览器(SVG与VML)做一些类似画布的绘图 - excanvas,Dojo Toolkit的GFX等等.虽然它们都不能显示给定标记的SVG图像,但这样会很好并且可以接受.

所以问题实际上包括几个部分:

  1. 是否有任何跨浏览器的Javascript库显示来自给定标记(非强制性SVG)的矢量图形并提供附加到DOM事件的可用性?
  2. 如果没有,哪种最狡猾的浏览器嵌入式技术最适合做这样的任务?我可以选择Flex/Flash,Java applet.由于Windows锁定,Silverlight不是一个选项.

[ 编辑 ]谢谢大家的意见/建议.以下是关于此事的随机笔记/结论:

  • 我需要的交互水平是能够检测正在显示的矢量图像上的DOM事件 - 鼠标悬停,鼠标移动,点击等 - 以及对它们做出反应的能力,如改变背景颜色,显示对话框等.
  • 坚持使用SVG格式的想法非常好,因为除了最受欢迎的IE浏览器之外,它在许多浏览器中都是原生的.经过一些实验显示动态SVG后,我意识到IE 7版本最成问题.由于浏览器不兼容,有太多的麻烦.
  • Cake似乎是一个很棒的Javascript框架,虽然我无法在IE7上运行这些示例.
  • Java Applets - 我最喜欢这个想法,因为我可以使用Apache Batik库,一个高质量的SVG渲染器.但是,Batik是一个非常大的库,我不能负担部署一个重量只有兆字节的applet.
  • 我决定坚持使用Flex选项.我发现了一个漂亮的矢量图形库Degrafa.它使用自己的标记格式,但它识别SVG路径表示法,所以在我的情况下,使用XSLT转换我的SVG或者只是解析它们将非常容易.

[ 编辑2 ]出现了更多评论.我想澄清一下,"Windows锁定"是指Silverlight通常在Windows上运行的情况,更具体地说是IE.我怀疑它是其他系统上可接受的解决方案(例如Flash或Java Applet).是的,我毫不怀疑一个人能够在任何系统上启动Silverlight应用程序,但我担心这对普通用户来说太费劲了.

@Akira:你对IE7上的那些"SVG渲染器"有任何问题吗?我总是抛出Javascript错误.

svg vml cross-browser vector-graphics

28
推荐指数
3
解决办法
1万
查看次数

编写SVG脚本

我正在考虑开发一个类似于stackoverflow的网站,但答案也可能包括图纸(原理图,在这种情况下).我希望在答案表单中有一个区域,他们可以在不需要特殊插件等的情况下制作这个原理图.

  1. 我们是否已经到了SVG已经或应该很快就会达到临界质量的时间点(1 - 2年),以便设计一个以脚本运行SVG作为主要功能的网站是合理的(即,需要Firefox或其他符合SVG/AJAX标准的浏览器)?
  2. 学习跨平台SVG脚本(可能是javascript)有哪些好的资源?

- 亚当戴维斯

javascript ajax svg

16
推荐指数
2
解决办法
8279
查看次数

标签 统计

svg ×2

ajax ×1

cross-browser ×1

javascript ×1

vector-graphics ×1

vml ×1