在 .NET 中将 VML 转换为 SVG 时出现问题

发布于 2024-11-04 23:11:35 字数 855 浏览 0 评论 0原文

我有一个与这篇文章非常相似的问题;我正在使用 RaphaelJS 生成图表,但更具体地说,在我的情况下,我需要打印结果。我使用了 Inkscape 的命令行实用程序(非常棒)将 Raphael 的 SVG 输出转换为PNG 文件,用户可以下载并打印。

问题是,它可以在 Firefox 等浏览器中运行,但不能在 Internet Explorer 中运行。由于 IE 使用 VML,而不是 SVG,因此当用户来自 IE 时,Inkscape 不会对其进行转换。

我看过 IECapt,它很可能已经完成了这项工作,但在我的场景中,文字屏幕截图是不够的,因为生成的图表通常跨越屏幕宽度,而我需要将其全部放在一个文件中。用户还可以通过单击节点等来修改图表,而无需更改 URL,因此在我的情况下实际使用 IECapt 需要 URL 参数来复制图表的状态。

我只需要了解一下 VML 格式的转换,然后我就可以从这个项目中解脱出来了!

链接

I have a very similar problem as this post; I'm using RaphaelJS to generate a chart, but more specifically in my case I need to print the result. I have used Inkscape's command line utility (it's excellent) to convert Raphael's SVG output to a PNG file, which the user can download and print.

The problem is, it works in Firefox etc. but not Internet Explorer. Because IE uses VML, not SVG, Inkscape won't convert it when the user is coming from IE.

I have had a look at IECapt which might well have done the job, but a literal screenshot wouldn't be enough in my scenario as the generated chart normally spans more than a screen width and I need it all in one file. Also the user can modify the chart by clicking on nodes etc without changing the URL, so actually using IECapt in my case would require URL parameters to replicate the state of the chart.

I just need to get my head around this conversion from the VML format and I can wipe my feet of this project!

Links

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

不知在何时 2024-11-11 23:11:35

您可以通过以下方式将 VML 转换为 SVG:http://sourceforge.net/projects/vectorconverter/,摘自这个问题:有没有任何工具可以将旧版 VML 转换为 SVG?,然后通过 Inkscape 运行它以获取 PNG 版本。

编辑:vectorconverter 工具基于 PHP,但使用 XSLT 来完成繁重的工作 - VML 和 SVG 只是底层的 XML - 因此,如果您无法直接访问 PHP 库,您可能可以设法以以下语言重用 XSLT:你的选择。

You can convert the VML to SVG via this: http://sourceforge.net/projects/vectorconverter/, taken from this question: Are there any tools to convert legacy VML to SVG?, then run it through Inkscape to get the PNG version.

Edit: The vectorconverter tool is PHP-based but uses XSLT for the heavy lifting - VML and SVG are just XML under the hood - so if you can't access the PHP libraries directly you could probably manage to reuse the XSLT in the language of your choice.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文