我想自动化inkscape命令“简化路径”。具体来说,我想要一个命令行工具,它将 svg 文件作为输入,将“简化路径”应用于图中的所有路径并保存一个新的(较小的)svg 文件。这可以使用inkscape吗?是否有一个免费的命令行工具(我使用的是 linux)来完成这项工作?
更新:
由于问题/答案很旧,因此inkscape 命令行已更改。
inkscape file.svg --batch-process --actions='EditSelectAll;SelectionSimplify;FileSave;FileClose'
Run Code Online (Sandbox Code Playgroud)
另请参阅 Oren Ben-Kiki 或 Pix 回答的评论。
原点:
应该可以:
http://tavmjong.free.fr/INKSCAPE/MANUAL/html/CommandLine.html
显示如何从命令行调用inkscape 的函数(称为“动词”)。要inkscape --verb-list在命令行上调用所有动词的列表。您正在寻找的是SelectionSimplify.
因此,您必须编写一个小脚本来过滤 svg 中的每个 id,并使用 id 调用inkscape。像这样(优化所有路径并在最后退出inkscape)
inkscape filename.svg --verb=EditSelectAll --verb=SelectionSimplify --verb=FileSave --verb=FileClose --verb=FileQuit
Run Code Online (Sandbox Code Playgroud)