2

我正在尝试使用 drawSvg() 函数将 SVG 转换/放入画布中。命令是:ctx.drawSvg(SVG_XML_OR_PATH_TO_SVG, dx, dy, dw, dh);. 当我专门将 svg 作为参数放入时,这很好用,例如:ctx.drawSvg('<svg><rect x="0" y="0" width="100" height="100" fill="red" /></svg>', 0 , 0 , 500, 500);,我最终得到一个带有红色方块的画布,这是完全正确的。但是,我需要能够从文档中获取 Svg 标记并将其用作参数。我尝试了几种不同的方法来做到这一点,但它们都不起作用。我该怎么做?这是一个 jsFiddle 页面,其中包含我正在尝试做的事情。谢谢! http://jsfiddle.net/qDmhV/722/

4

1 回答 1

5

.html()返回一个元素的innerHTML,包括前导和尾随空格,这会drawSvg()阻塞。

试试这个(从你的小提琴):

ctx.drawSvg($.trim($("#test2").html()), 0 , 0 , 500, 500);

$.trim将为您删除该空格。

于 2014-06-26T14:20:26.037 回答