我这样绘制 SVG 路径:
开始:
M x, y
Run Code Online (Sandbox Code Playgroud)
添加曲线
Q x1, y1, x, y
Run Code Online (Sandbox Code Playgroud)
等等等等......当我想关闭路径时我只需添加Z
但最后一条线段现在没有任何控制点。
如何闭合路径并在最后一段上设置控制点?
类似于:Z Q x1, y1其中 Z 闭合路径(当前点到第一个点),但它使用 x1 和 y1 作为控制点,而不仅仅是直线。
我理解你的愿望。每次我在 Illustrator 中徒手绘制斑点时,我总是将最终点设置在原始点上,然后拖动以为两侧的控制点创建切线。
\n\nSVG 没有这样的功能。没有路径命令可以执行此操作。最接近的是简写路径命令S和T,但它们从前一个命令的最后一个控制点派生出第一个控制点,而您想要的是从下一个命令的第一个控制点派生第二个控制点( wrap-围绕风格)。
您可以使用 JavaScript 来完成此操作,例如标记
\n\n<path d="\xe2\x80\xa6 Z" class="smooth-close" />\nRun Code Online (Sandbox Code Playgroud)\n\n\xe2\x80\xa6 和一个小脚本,用于查找所有路径smooth-close,从第一个命令确定适当的控制点并生成SorT命令并将其附加到路径数据。但由于您没有用javascript标记您的问题,我认为您不会对这样的解决方案感兴趣。