12个版本 (7个重大更新)
0.8.1 | 2022年8月28日 |
---|---|
0.7.0 | 2022年6月21日 |
0.6.0 | 2021年9月13日 |
0.5.2 | 2019年8月11日 |
0.4.0 | 2017年6月25日 |
#929 在 算法
每月37次下载
在 spiropath 中使用
60KB
1K SLoC
svg2polylines
将SVG数据转换为多边形线列表(即多边形链或多边形路径)。
这可以用于例如简单的绘图机器人,该机器人仅支持绘制直线和抬笔/落笔命令。
使用Lyon库进行贝塞尔曲线的展平。SVG文件使用usvg进行预处理/简化。
注意:目前完全忽略路径样式。仅返回路径本身。
预览
有一个小的预览工具可以查看生成的多边形线。它很简单且有些技巧,但有助于调试。
cargo run --release --example preview path/to/file.svg
--release
参数非常重要,否则将会非常慢。
使用鼠标拖动/缩放图像,使用 Esc
键关闭窗口。
用法:Rust
签名
fn svg2polylines::parse(svg: &str, tol: f64, preprocess: bool) -> Result<Vec<Polyline>, String>;
查看examples/basic.rs
以获取完整的使用示例。
FFI
此crate曾经包含FFI绑定。从版本0.8.0开始已删除。如果您需要它们,请打开GitHub上的问题,我可能会重新引入它们。
许可
根据您的选择,许可方式如下
- Apache License,版本2.0 (LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT许可 (LICENSE-MIT 或 https://open-source.org.cn/licenses/MIT)
贡献
除非您明确声明,否则任何有意提交以包含在您的工作中的贡献,根据Apache-2.0许可的定义,应如上所述双重许可,无需任何附加条款或条件。
依赖项
~6MB
~124K SLoC