用变换计算SVG形状的长度和面积

时间:2012-05-12 13:24:01

标签: svg

我正在研究.NET项目。我需要在SVG文件中计算形状的长度和面积。

有两个困难:

a)贝塞尔曲线 - 似乎公式不是微不足道的

b)变换 - 在进行计算之前,我必须应用所有变换

有人可以推荐一个对SVG文件进行几何计算的库吗? 任何人都可以推荐一个代码,将变换应用于SVG文件并返回每个形状中每个点的原始值吗?

2 个答案:

答案 0 :(得分:1)

对于贝塞尔曲线,您可以通过将曲线转换为线段来计算长度。您可以使用DeCastelJau提供的算法。 algorithm is like

答案 1 :(得分:0)

如果您在在线SVG编辑器中打开并保存文件 - “SVG-Edit”,它本身将删除任何转换(并为您提供所需的每个点的原始值)

此外,由于SVG-Edit是opensource,您甚至可以搜索其源代码以找到执行该操作的模块并使用它。