15

我有一个 svg 文件,其中包含带有贝塞尔曲线的复杂路径。我需要转换此路径数据以将其用于 html 地图区域,所以我实际上只需要坐标(但对于大曲线,在两个端点之间有一些坐标会非常好。

我尝试了 Inkscape 的简化路径功能,但这些路径仍然包含曲线......

是否有任何工具或公式可以将这些曲线转换为简单的坐标?

也许是另一种在其坐标中不使用曲线的 Inkscape 输出格式?

4

3 回答 3

23

在 Inkscape 中:

  1. 选择“按节点编辑路径”工具 ( F2)
  2. 单击您的路径以选择它
  3. Ctrl+A选择该路径中的所有节点
  4. 单击将新节点插入选定段。重复此操作以尽可能详细地表示曲线的形状。
  5. 然后单击制作选定的线段

这些选项位于顶部的工具栏上 - 加号图标和两个方形节点之间的直线对角线。

制作选定线段的屏幕截图

于 2011-06-17T15:02:26.403 回答
9

对于自动化,请尝试Flatten BezierInkscape 中包含的扩展。说明在这里

于 2016-01-26T00:14:16.590 回答
1

有更多技术方法可以简化 SVG 路径 - https://github.com/mattdesl/simplify-path

var path = [ [250, 150], [250, 150], [25, 25], [24, 25], [10, 10] ]
var tolerance = 10
path = simplify(path, tolerance)
//result:
//[ [ 250, 150 ], [ 25, 25 ], [ 10, 10 ] ]
于 2017-10-26T13:19:18.877 回答