【发布时间】:2013-01-11 13:54:48
【问题描述】:
我要做的是在画布上绘制 svg 图像,然后创建此画布的 PNG 图像。 这是我所做的一个示例:
var canvas = document.getElementById('mycanvas');
var ctx = canvas.getContext('2d');
var img = new Image();
img.onload = function () {
ctx.drawImage(this, 0, 0, this.width, this.height);
var url = canvas.toDataURL("image/png");
}
img.crossorigin = "Anonymous"; //not sure this affects anything...
img.src="some image url"
当我设置 png/jpeg 图像的来源时,它可以正常工作,但 src 是 svg 图像,我在调用“ canvas.toDataURL("image/png")"。 不明白有什么区别?
当我采用内联 svg 并将其渲染到画布内,然后尝试创建 png 图像时,也会发生同样的情况。我现在没有代码 - 如果需要,我稍后会添加它。
【问题讨论】:
-
SVG 是否引用任何外部资源?可能是嵌入的光栅图像?
-
不确定你的意思,这里是svg(很简单):
标签: svg html5-canvas