1

BlenderがGimpと同期するためのアドオンを書いています。このスクリプトは、Gimp内から開始できるはずですが、登録できません...なぜですか?

blender_gimp_sync.py:

# -*- coding: utf-8 -*-

#!/usr/bin/env python

from gimpfu import *

def blender_gimp_sync():
    image_dir = "/home/antoni4040/Έγγραφα/Layout.png"
    image = gimp.pdb.gimp_file_load(image_dir, image_dir)
    gimp.Display(image)


register(
    "python_fu_bgsync",
    "Blender-Gimp Sync",
    "Syncronize Gimp with Blender for texturing",
    "Antonis Karvelas",
    "Antonis Karvelas",
    "2012",
    "<Image>/Image/Blender-Gimp Sync",
    "*",
    [],
    [],
    blender_gimp_sync
)   

main()

本当に不思議です...

4

1 に答える 1

2

どのエラーが発生しているのかは言わなかった-しかし、ソースファイルを投稿したので、私はそれを推測できると思う:GIMPは、プラグインがシステムによって実行可能であることを期待している-そして、Posix(Linuxを含む)システムにファイルを伝えるもの特定のインタープリターまたはシェルを使用して実行する必要があります。これは、シェバン行です。この行は#!/usr/bin/env python、例に含まれています。

ただし、この行はファイルの最初の行である必要があります。この行の#!文字は、ファイルの最初の2文字である必要があります。文字エンコードを示す行は、# -*- coding: utf-8 -*-その後に続く必要があります。ファイルの2行目である必要があり、間に空白行はありません)。

最後に、Pythonファイルで「chmoda + x」を実行して、スクリプトを実行可能ファイルとして設定してください。

これに関連していますが、問題の原因ではないため、GIMPではメニューパスをスクリプトメニュー名と一緒に配置することは非推奨です。これを行う正しい方法は、「date」パラメーターの後に、表示される名前だけを渡すことです。メニュー内の「同期」で、呼び出しの最後に、次のようにメニューパスを名前付きパラメーターとして渡します。menu="<Image>/Image/Blender-Gimp"

于 2012-10-04T02:42:12.223 に答える