使用或工具的实验性SVG优化器。

penkit-optimize的Python项目详细描述


penkit-optimize是一个命令行工具,用于优化和可视化用于笔式打印的svg图形的绘图顺序。有关详细信息,see this post

安装

此包具有非python依赖项libspatialindex。最简单的安装方法是通过conda:

conda install rtree

安装后,penkit-optimize可以通过pip

pip install penkit-optimize

用法

查看cli选项:

penkit-optimize -h
    usage: penkit-optimize [-h] [--greedy] [--noopt] [--runtime RUNTIME]
                           [--merge-paths [MERGE_PATHS]] [--vis-output VIS_OUTPUT]
                           input_file [output_file]

    positional arguments:
    input_file
    output_file

    optional arguments:
    -h, --help            show this help message and exit
    --greedy, -g          Run greedy optimization only.
    --noopt, -n           Don't run any optimization.
    --runtime RUNTIME, -t RUNTIME
                          Maximum runtime (in seconds) of optimization stage.
    --merge-paths [MERGE_PATHS], -m [MERGE_PATHS]
                          Merge paths that start/end near each other. You may
                          optionally specify a threshold distance (in document
                          units) after this parameter.
    --vis-output VIS_OUTPUT, -v VIS_OUTPUT
                          If provided, save a visualization of the path to this
                          SVG file.

示例

使用默认选项生成优化的svg(最多5分钟运行时间),并保存到input-optimized.svg

penkit-optimize input.svg

不要优化任何东西,只要可视化传输即可:

penkit-optimize input.svg -n -v noopt-vis.svg

noopt-vis.svg

examples/noopt-vis.svg

运行贪婪优化(仅限),保存文件,并保存结果的可视化效果:

penkit-optimize input.svg output.svg -g -v greedy-vis.svg

greedy-vis.svg

examples/greedy-vis.svg

运行完全优化并将结果可视化:

penkit-optimize input.svg output.svg -v opt-vis.svg

opt-vis.svg

examples/opt-vis.svg

运行1.5个单元内开始/结束的完整优化和合并路径:

penkit-optimize input.svg -m 1.5

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java异常无法从资源中找到可绘制的图标   Android 6.0.0上应用程序崩溃后java Android VM重新启动   当我将java项目导出到runnable jar中时,log4j不会记录日志   java在Jtable netbeans中显示MS访问数据   为什么不呢。Java中的NETstyle委托而不是闭包?   java如何正确使用如此多的CPU停止命令队列循环?   java使用==   java如何将scriptlet转换为JSTL?   java mvn测试失败,但通过IntelliJ IDEA运行测试   java为什么文件在使用另一个按钮后不会被删除   java JDBC MySQL不读取最新插入   java如何在安卓中绘制从Firebase数据库检索到的数据   java HTML解析getElementByClass方法   java Arraylist hashmap 安卓