2017-03-06 9 views
0

나는 두 개의 이미지를 담고있는 거대한 디렉토리 목록을 가지고있다 : 1 개의 jpg 파일과 1 개의 png 파일; 외부 스크립트에서 jpg와 관련된 모든 .xcf를 첫 번째 레이어로 만들고 싶습니다. 파이썬으로 시도한 후에 나는 체계 설명과 다른 연결된 주제에 익사했습니다 ... 누군가가 그러한 명령을 내리고 이해하도록 도와 줄 수 있습니까? 일반적으로Gimp python-fu : 1 jpg와 1 png에서 다층 xcf를 만들고 저장하는 방법은 무엇입니까?

답변

0

, 이미지의 각 쌍에 대해이 같은 :

image=pdb.gimp_file_load(jpgImage,jpgImage) 
layer=pdb.gimp_file_load_layer(image,pngImage) 
image.add_layer(layer,0) 
pdb.gimp_xcf_save(0,image,layer,outputImage,outputImage) 

ofn-coalesce-images 스크립트는 매우 비슷한 일이 ...

그런를 실행하려면 (디렉토리에있는 모든 이미지를 스택) 수행

def run(directory): 
    # Iterates subdirs and creates images 

이 평가 공식적으로 할 필요가 없습니다 : 헤드리스 김프에서 것은, 일부 지정된 루트 디렉토리에서 쳐다보고 실행할 것 평을 고려 파이썬 플러그인 (아무것도 등록 할 필요가 없습니다). 그럼 당신은 사용하여 실행할 수 있습니다 :

유닉스 틱 :

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

윈도우 :

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

(Linux 및 Windows 따옴표를 다루는 다소 반대의 방법을 가지고 있기 때문에이 조금 복잡하고 명령 행에서 큰 따옴표).