fabric.js导出为svg问题与圆圈

时间:2017-05-29 15:48:12

标签: javascript svg fabricjs

导入圆形对象然后导出到svg时,它们将成为不可见的路径。我做错了什么还是个错误?

  <path d="M 90 0 A 90 90 0 0 1 90 1.256933281983528e-12" style="stroke: none; stroke-width: 0; stroke-dasharray: none; stroke-linecap: butt; stroke-linejoin: miter; stroke-miterlimit: 10; fill: rgb(0,0,0); fill-rule: nonzero; opacity: 1;" transform="translate(1329.1 559.64) "/>

请参阅小提琴示例单击导出并查看手动添加的svg是如何正确的<circle /> http://jsfiddle.net/nwkdzss2/

1 个答案:

答案 0 :(得分:1)

这是一个四舍五入的问题。你有这些参数:

  "startAngle":0,
  "endAngle":6.2831853071796,

它们被解释为超过2π,并且由于某种原因,将大角度标志(A之后的第四个数字)翻转为假,并且仅绘制两个点之间的“短路径”:

d="M 90 0 A 90 90 0 0 1 90 1.256933281983528e-12"

如果对2π使用稍小的数字,

  "startAngle":0,
  "endAngle":6.2831853,

路径数据被解释为使用“漫长的路”。

d="M 90 0 A 90 90 0 1 1 90 -6.461627453714901e-7"

完全关闭这些参数会绘制一个圆基元。