2017-06-01 99 views
0

我需要幫助才能執行在Mac OS上使用GIMP庫的自制python腳本。 我確定這個腳本沒問題,因爲它在GNU-Linux操作系統上運行良好。在Mac OS上執行Python GIMP腳本

我所做的:

  • 安裝GIMP與.dmg分佈
  • 安裝了Python 2.7.13
  • 複製在~/Library/Application Support/GIMP/2.8/plug-ins
  • 我的Python腳本添加執行權限chmod +x myScript.py
  • 修改了我.bash_profile加入export PYTHONHOME='/Library/Frameworks/Python.framework/Versions/2.7'

當我試圖從終端執行該腳本,我得到:

ImportError: No module named gimpfu 

我不知道如何解決這個問題!

+0

你試圖在gimp之外執行一個gimp插件嗎?這不應該工作,插件只能從gimp內運行。你可以添加'.../ GIMP/2.8/python'目錄轉換爲'PYTHONPATH'以使其在gimp之外可用,但我不確定這會起作用。 – mata

回答

2

gimpfu僅在腳本從Gimp啓動時纔可用。有兩種情況:

  • 腳本是一個普通的插件,它應該至少包含一個電話註冊(...)和主()的調用。這標識它爲Gimp,它可以從Gimp UI調用。請注意,將它保存在Gimp安裝目錄的Gimp profile而不是的插件目錄中是最好的地方。由於您在OSX上,我建議您將Python文件保存在一個您可以輕鬆訪問(並備份)的目錄中,並在GIMP配置文件中爲其添加一個軟鏈接。

  • 腳本只是一個腳本,用於批處理模式,它不需要在插件目錄中,它仍然必須從Gimp調用,通過調用Gimp並將腳本作爲腳本傳遞參數,使用命令行,例如:

    gimp -idf --batch-interpreter python-fu-eval -b 'import sys; sys.path=["."]+sys.path;import batch;batch.run("./images")' -b 'pdb.gimp_quit(1)' 
    

其中:

  • Python路徑擴展到包括從其中的Python文件將被加載的目錄:sys.path=["."]+sys.path(她e使用當前目錄)。您可以永久擴展一般的Python路徑。
  • 腳本被加入到了Python:import batch(腳本假定爲./batch.py
  • 該文件中的run()方法被調用任何相關參數

心靈的單引號和雙引號,一些用於Python,一些用於shell解釋器。

請注意,直接從命令行調用腳本的方法有一些優點,此時會捕獲很多(但不是全部)語法錯誤,並且您不必等待Gimp啓動找出這些。