javascript - 将 SVG 多边形点转换为路径?

标签 javascript svg raphael

我正在寻找可以转换如下内容的函数:

var points="270,328 270,376 342,376 342,368 358,368 358,320 314,320 298,336 278,336"

转换成路径的SVG格式,我看到了this question / answer ,但我收到一个错误:Uncaught TypeError: Cannot read property 'ownerSVGElement' of undefined。这是因为我将我的 var 点放入该函数中,它不是为此而设计的,我认为它需要完整的 xml 或其他东西。

任何建议都很棒,尤其是强制插画家导出路径而不是多边形!

谢谢!

最佳答案

var points="270,328 270,376 342,376 342,368 358,368 358,320 314,320 298,336 278,336"

var p = points.split(/\s+/);
var path = "";
for( var i = 0, len = p.length; i < len; i++ ){
    path += (i && "L" || "M") + p[i]
}

console.log( path )
=> M270,328L270,376L342,376L342,368L358,368L358,320L314,320L298,336L278,336 

关于javascript - 将 SVG 多边形点转换为路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16245712/

相关文章:

javascript - 表单提交使用 SVG 捕获的签名

javascript - Raphael JS 嵌套 Canvas ?

javascript - 如何填充 Raphael (JavaScript) 中路径定义的区域?

javascript - 错误处理 promise 在 mongoDB 中保存唯一数据(ValidationError)

javascript - 什么是 fs 以及如何安装它?

javascript - 将光标设置在 div 元素上?

java - 在Java中读取SVG路径

javascript - 使用 .outerWidth()/.outerHeight() 将带有边距/填充的元素居中。函数返回不同的边距和填充值

xml - 是否有一种 3D 格式是 SVG 的 3D 扩展?

javascript - 模糊 SVG 中的边界 (Raphael.js)