4

我像这样绘制 SVG 路径:

开始:

M x, y

添加曲线

Q x1, y1, x, y

等等等等....当我想关闭路径时,我只需添加Z

但是最后一条线段现在没有任何控制点。

如何关闭路径并在最后一段上有控制点?

类似于:Z Q x1, y1Z 关闭路径(当前点到第一个点)的位置,但它使用 x1 和 y1 作为控制点,而不仅仅是直线。

4

1 回答 1

4

我理解你的愿望。每次我在 Illustrator 中徒手绘制斑点时,我总是将最终点设置在原始点上,然后拖动以创建两边控制点的切线。

SVG 没有这样的特性。没有执行此操作的路径命令。最接近的是速记路径命令ST,但是它们从上一个命令的最后一个控制点派生第一个控制点,而您想要的是从下一个命令的第一个控制点派生第二个控制点的东西(包装-围绕风格)。

你可以用 JavaScript 来做到这一点,例如像这样的标记

<path d="… Z" class="smooth-close" />

…还有一个小脚本,它可以找到所有smooth-close路径,根据第一个命令确定适当的控制点并生成一个SorT命令并将其附加到路径数据中。但是由于您没有使用标记您的问题,我认为这样的解决方案不会让您感兴趣。

于 2012-04-18T03:17:45.967 回答