我正在开发.NET 项目。我需要计算 SVG 文件中形状的长度和面积。
有两个困难:
a) 贝塞尔曲线 - 似乎公式并非微不足道
和
b)转换 - 在进行计算之前,我必须应用所有转换
谁能推荐一个对 SVG 文件进行几何计算的库?谁能推荐一个将转换应用于 SVG 文件并为每个形状中的每个点返回原始值的代码?
我正在开发.NET 项目。我需要计算 SVG 文件中形状的长度和面积。
有两个困难:
a) 贝塞尔曲线 - 似乎公式并非微不足道
和
b)转换 - 在进行计算之前,我必须应用所有转换
谁能推荐一个对 SVG 文件进行几何计算的库?谁能推荐一个将转换应用于 SVG 文件并为每个形状中的每个点返回原始值的代码?
对于贝塞尔曲线,您可以通过将曲线转换为线段来计算长度。您可以使用 DeCastelJau 给出的算法。 算法就像
如果您在在线 SVG 编辑器 - 'SVG-Edit' 中打开并保存文件,它本身将删除任何转换(并将为您提供所需每个点的原始值)
此外,由于 SVG-Edit 是开源的,您甚至可以搜索其源代码以找到执行此操作的模块并使用它。