[英]Open all images in a folder on gimp using Python
我得到類似的東西:
gimp = r'C:\Program Files\GIMP 2\bin\gimp-2.10.exe'
os.chdir(folder)
filesnames= os.listdir()
for f in filesnames:
actfile = folder+'\\'+f
p = subprocess.Popen([gimpcamin, actfile])
p.wait()
但是這個腳本只能打開一個圖像,當我關閉 Gimp 時會打開下一個圖像。
注意:我正在使用 VSCode
我認為問題在於您在p = subprocess.Popen([gimpcamin, actfile])
之后立即有p.wait()
,這使得它在繼續之前等待該命令(即 Gimp)返回。
你應該試試:
gimp = r'C:\Program Files\GIMP 2\bin\gimp-2.10.exe'
os.chdir(folder)
filesnames= os.listdir()
processes = []
for f in filesnames:
actfile = folder+'\\'+f
processes.append(subprocess.Popen([gimpcamin, actfile]))
# wait for all processes to finish
for p in processes:
p.wait()
我不確定這是你真正想要的。 我懷疑您寧願為每個圖像打開另一個 Gimp 窗口,而不是打開一個完全不同的實例。 您應該仔細檢查 Gimp 的界面,看看是否可行。
如果這就是你所做的一切,你可以在你的 shell 中使用gimp /path/dir/*.png
,就像大多數 Unix 實用程序一樣, gimp
命令接受幾個文件。
如果您想在 Python 中執行此操作:
gimpCmd=[r'C:\Program Files\GIMP 2\bin\gimp-2.10.exe','-n'] # -n to get a new Gimp instance, if necessary
subprocess.Popen(gimpCmd+os.listdir())
當然,這可能會受到可接受的命令行長度的限制,但實際上,在達到該限制之前,您將用完 RAM(並顯示不動產)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.