문제

Gimp와 동기화하기 위해 Blender용 추가 기능을 작성 중입니다. 이 스크립트는 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()

정말 이상해요...

도움이 되었습니까?

해결책

당신은 어떤 오류가 발생하는지 말하지 않았지만 소스 파일을 게시했기 때문에 추측할 수 있다고 생각합니다.김프는 플러그인이 시스템에 의해 실행될 것으로 예상합니다. Posix(리눅스 포함) 시스템에 파일이 특정 인터프리터나 쉘로 실행되어야 한다고 알려주는 것은 shebang 라인입니다. #!/usr/bin/env python 귀하의 예에서.

그러나 이 라인은 첫 번째 파일의 줄 - #! 그 안에 있는 문자는 파일의 처음 두 문자여야 합니다.문자 인코딩을 나타내는 줄 - # -*- coding: utf-8 -*- 그 뒤에 와야 합니다. 파일의 두 번째 줄이어야 하며 사이에 빈 줄이 없어야 합니다.

마지막으로 Python 파일에서 "chmod a+x "를 실행하여 스크립트를 실행 가능하도록 설정하십시오.

관련이 있지만 문제의 원인이 아니기 때문에 스크립트 메뉴 이름과 함께 메뉴 경로를 입력하는 것은 김프에서 더 이상 사용되지 않습니다. 이를 수행하는 올바른 방법은 "date" 매개변수 뒤에 표시해야 하는 이름만 전달하는 것입니다. 메뉴에서 - "동기화" - 호출이 끝날 때 다음과 같이 메뉴 경로를 명명된 매개변수로 전달합니다. menu="<Image>/Image/Blender-Gimp"

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top