如何在javascript中生成图像并在IE7中将其转换为png(无html5画布和服务器端工作)

如何在javascript中生成图像并在IE7中将其转换为png(无html5画布和服务器端工作),javascript,vector-graphics,Javascript,Vector Graphics,我想用javascript创建一个图像:在一些类似画布的对象上绘制直线、圆弧、文本等,然后(在客户端)将其转换为base-64 png字符串 我知道我可以使用HTML5Canvas(使用canvas.toDataUrl(“image/png”))来实现这一点,但我需要一些在IE7/IE8中也能工作的东西 解决方案必须完全在客户端,因此获取SVG,将其发送到服务器,然后使用Apache Batik将其转换,这对我来说是行不通的 我发现一些东西可以将位图(2d像素阵列)转换为png- 因此,如果有一

我想用javascript创建一个图像:在一些类似画布的对象上绘制直线、圆弧、文本等,然后(在客户端)将其转换为base-64 png字符串

我知道我可以使用HTML5Canvas(使用canvas.toDataUrl(“image/png”))来实现这一点,但我需要一些在IE7/IE8中也能工作的东西

解决方案必须完全在客户端,因此获取SVG,将其发送到服务器,然后使用Apache Batik将其转换,这对我来说是行不通的

我发现一些东西可以将位图(2d像素阵列)转换为png- 因此,如果有一些库可以从某种矢量图形数据生成位图(或具有某些getPixelAt(x,y)功能),这可能会有所帮助

谢谢, 你可以试试。 它使用canvas,但与IE7/8兼容(多亏了Excanvas库),并具有您所需的所有功能

它缺少一些文档,但是Kangax,开发人员在这里和项目上非常活跃,所以任何疑问都应该很快得到解决。

你可以试试。 它使用canvas,但与IE7/8兼容(多亏了Excanvas库),并具有您所需的所有功能


它缺少一些文档,但是Kangax,开发人员在这里和项目上非常活跃,所以任何疑问都应该很快得到解决。

我也在寻找解决方案。最初的javascript pnglib非常好,但在现代javascript环境中编译时不会出错。我已经修复了错误,将其转换为ES6,并使用类型化数组使其更快。看看:


我也在寻找解决方案。最初的javascript pnglib非常好,但在现代javascript环境中编译时不会出错。我已经修复了错误,将其转换为ES6,并使用类型化数组使其更快。看看:


您可以尝试excanvas为IE提供html5画布支持-我已经看过explorer画布。看起来我无法将画布导出到png(就像我在常规画布中一样),我必须这样做。我遗漏了什么吗?你可以试试excanvas为IE提供html5画布支持——我已经看过explorer画布了。看起来我无法将画布导出到png(就像我在常规画布中一样),我必须这样做。我遗漏了什么吗?看起来很有希望,我会查出来的。不幸的是,这不起作用。Excanvas不支持toDataUrl(),这是将画布导出为base64字符串的方法。看起来很有希望,我会检查它。不幸的是,这不起作用。Excanvas不支持toDataUrl(),这是将画布导出为base64字符串的方法。