在<canvas>中绘制SVG:最简单的方法吗?</canvas>

时间:2012-07-12 09:46:31

标签: html5 canvas svg drawimage

我正在尝试在canvas元素上绘制SVG图像。我找到的一些来源建议我应该使用一个特殊的库将SVG数据转换为<canvas>笔画,而其他人说我可以在画布上使用带有SVG图像的drawImage()调用来绘制它。 / p>

首先,我使用canvg库在画布上绘制我的SVG,但我认为它太功能丰富,而且对于我的简单需求而言太沉重了。但是,使用简单的drawImage调用似乎在我的应用程序中不起作用:不显示任何内容。如果我用一个PNG图像切换我的SVG的rescource URL,它显示就好了。怎么了?我可以做错什么或者在画布上画SVG不再支持吗?

我在Chrome 21,22-canary和Opera中试过这个。

我的代码(在CoffeeScript中):

ctx = @canvas.getContext '2d'
ctx.clearRect 0, 0, @canvas.width, @canvas.height
ctx.drawImg @image, 0, 0, @canvas.width, @canvas.height

如果@image指向PNG,则无效,而不是SVG。

0 个答案:

没有答案