对于一个项目,我需要将大量的
.svg
文件自动转换为
.dxf
文件,以便进一步处理。
情况是这样的。一个目录中有大量的
.svg
文件,这些文件应该被转换为
.dxf
(不管这些
.dxf
文件是在同一个目录中还是在一个子文件夹中,dxf名称应该是svg名称)。
我可以用Inkscape GUI来做,它也可以在CAD程序中导入
.dxf
文件,但如前所述,我需要将其自动化。(到目前为止,我只用Python编写过)。
我的想法。我通过命令行在Inkscape中打开文件。通过以下代码的命令,可以导出
png
格式的文件。
from subprocess import call
import os
svg_dir = "C:\\temp\\layers\\"
files = [svg_dir + i for i in os.listdir(svg_dir) if ".svg" in i]
dir = r"C:\Program Files\Inkscape"
for i in files:
cmdline = "Inkscape -z -f "+ i +" -e "+ i + ".png"
rc = call("start cmd /K " + cmdline, cwd=dir, shell=True)
但我并不真正了解Inkscape的扩展。我只知道我需要dxf_outlines.py/.inx
在扩展目录中。我总是需要相同的导出选项,所以我可以重写Python代码,然后通过Inkscape的命令运行它吗?
或者有什么解决方案,不需要任何额外的软件,如Inkscape in Python?就我所见,没有。