2010-02-12 103 views
1

,我不明白:使用subprocess.call裁剪我有我的Python腳本麻煩圖像

subprocess.call(['convert', file, '-crop', '80x10+90+980', '+repage', 'test.jpg']) 

返回 「無效參數 - -crop

但是,如果我從命令行運行它,它工作正常:

convert test.jpg -crop 80x10+90+980 +repage test.jpg 

我在這裏錯過了什麼?

回答

2

系統中是否有多個convert?試試你想要的命令的絕對路徑?

+0

@MattH:同意! – bhups 2010-02-12 10:14:14

1

怎麼樣使用python image library instead?這似乎比調用子進程更可靠(特別是對於錯誤處理...)。

+0

那麼我想使用作物,比較.. PIL提供了嗎? – Manu 2010-02-12 10:34:21

+0

我不知道「比較」是什麼意思,但PIL肯定能夠裁剪圖像。 – 2010-02-12 10:52:00

1

file是_____builtin_____類。覆蓋它可能會產生不需要的結果。嘗試使用不同的變量名稱。

+0

我將其更改爲「fichier」(法國文件),但問題依然存在。無論如何感謝提示。 – Manu 2010-02-12 10:35:17

1

我其實是想你的代碼:

>>> import subprocess 
>>> subprocess.call(['convert', 'capa.jpg', '-crop', '80x10+90+980', '+repage', 'capa2.jpg']) 
0 
>>> 

而且這對我的作品!

所以,你必須在其他地方出現問題。再次檢查我們的假設。