Paper.js没有正确绘制svg路径

时间:2017-04-05 00:59:13

标签: javascript svg paperjs

这里有问题草图 -

http://sketch.paperjs.org/#S/q1bKS8xNVbJSCs5OLUnOUNJRSs5PAfHLEosUChJLMgwVbBXyUssVAoBsDXVfMzM9ExMdc2M9Uw8jcyM9M9NcXSMDMz0jIx1jA5qLqGtax+QpAAHYYXrFJUX52anO+Tn5RUBHqiflJCZnq2NREZ6ZUpIBVGFsDfReUlFqYnZBfmZeSbGSVXRsLQA=

以下是它的外观(运行代码段来查看) -



<svg height="210" width="400" stroke="black">
  <path d="M66.44,73.5H272.65m-206.22,30H272.65m-206.22,30H272.65m-206.22,30H272.65m-206.22,30H272.65m-206.22,30H272.65m-206.22,30H272.65" />
  Sorry, your browser does not support inline SVG.
</svg>
&#13;
&#13;
&#13;

不确定是什么问题。似乎paper.js正在跳过中间点并将第二个点与最后一个点连接起来。任何想法可能是错误的,或者在paper.js中导入svg路径的替代方法?感谢。

参考:http://paperjs.org/reference/path/#path--pathData

1 个答案:

答案 0 :(得分:3)

首次阅读Path文档可能不是很明显,但似乎Path只能用于绘制连接点描述的路径。需要使用的是CompoundPath。从文档 -

  

复合路径是由一个或多个简单子路径组成的复杂路径。

所以这很有用 -

var compoundPath = new paper.CompoundPath(pathData);