填充非凸 SVG 路径

Fill non-convex SVG path

我有一个非凸区域(由几个圆弧组成)并且想用一种颜色填充内部区域。但是,fill-属性 将改为填充外部,如图所示。我怎样才能实现内部填充?这是一个示例代码:

<path
   id="curved_path"
   style="stroke:#000000; stroke-width:0.2px; fill:none"
   d="M 79, 66 c 0,0 -17,0 -17, 15 
      M 45, 66 c 0,0  17,0  17, 15 
      M 79, 66 c 0,0 -17,0 -17,-15 
      M 45, 66 c 0,0  17,0  17,-15" 
/>

最终,我想编写一个脚本来绘制大量(可能数百万)这些弯曲的多边形。如果这在 SVG 中变得复杂,是否有其他语言或可编写脚本的工具可以更好地处理这些问题?

所有这些 M 命令都会创建单独的 subpaths 并独立填充。您需要将星星画成一条连续的路径:

<svg width="350" height="300" viewBox="45,51 35,30">
  <path id="curved_path"
        style="stroke:#000000; stroke-width:0.2px; fill:dodgerblue"
        d="M 79,66  c 0, 0   -17, 0   -17, 15
                    c 0,-15  -17,-15  -17,-15
                    c 0, 0    17, 0    17,-15
                    c 0, 15   17, 15   17, 15"
  />
</svg>