Calling Inkscape in Python
Possible Duplicate:
Calling an external command in Python
我正在尝试用python将svg文件转换为pdf。我想用Inkscape来做这个。我怎样才能在python中调用inkscape?
- whathaveyoutried.com网站
- 你好。在这里提出问题之前,我们希望看到一些以前的研究,理想情况下,还要看到一些代码来解决这个问题。我敢打赌,搜索引擎中的"system command python"可以满足您的需求。
- 抱歉,我刚接触到python,我在python中搜索了"svg to pdf",但找不到任何答案。无论如何,谢谢您的建议。
如果您根本不需要与流程进行通信,那么这应该很好:
1 2
| import subprocess
p=subprocess.call(['program','arg1','arg2','arg3', ...]) |
- 我应该用什么作为论据呢?我的意思是,当我使用inkspace时,参数是否会成为SVG文件的路径?
- 我试着用p = subprocess('/usr/bin/inkspace','file1.svg','file2.pdf'),但它给了我一个错误,比如:'module' pbject is not callable
- @用户1351130——试试这个:p=subprocess.call(['/usr/bin/inkscape','file1.svg','file2.pdf'])。
- 好的,谢谢,但我用过这个,它的作用是:p=subprocess['/usr/bin/inkscape', 'file1.svg', '--export-pdf', 'file2.pdf']。
- @medusalith:看看python的shlex.split()方法。它将单个命令字符串拆分为适当的参数。
- 使用/usr/bin/inkscape是不可移植的;python应该已经知道您的PATH,所以使用普通的inkscape作为参数。如果这不起作用,将/usr/bin/添加到PATH中会更安全,然后强制所有用户使用一个位置。