2010-10-07 6 views
5

오늘 김프를 사용하기 시작했습니다. 김프에서 수동으로 캔버스의 크기를 조정하면 (이미지 크기보다 작아지기 때문에) 이미지를 움직여 볼 수있는 영역을 "변경할"수 있습니다. 이 스크립트를 어떻게 복제합니까? 즉, 캔버스 크기 조정 단계에서 스크립트를 일시 중지하고 이미지의 위치를 ​​올바르게 지정하겠습니다.김프 - 캔버스 스크립팅 크기 변경

내가 묻는 이유 : 이미지의 정사각형 축소판을 만드는 작은 스크립트를 작성했습니다. 이 작업을 수행하는 방법은 높이와 너비가 동일하도록 캔버스 크기를 조정하는 것입니다. 높이와 너비가 다른 경우 높이의 값을 변경하여 높이와 너비가 같도록합니다 (예 : 600x500이 500x500이 됨). 그런 다음 이미지를 평평하게하고 필요한만큼 확장합니다.

(if (>= width height) 
    (begin 
     (gimp-image-resize image height height 0 0) 
    ) 
    (begin 
     (gimp-image-resize image width width 0 0) 
    ) 
) 

캔버스의 크기를 조정하는 데 사용하는 코드는 위에 있습니다. gimp-image-resize 명령의 마지막 두 값은 오프셋을 참조합니다. 이것은 스크립트가이 단계에 도달 할 때 수동으로 수정하고자하는 것입니다. 어떤 도움이라도 대단히 감사하겠습니다. 감사!

답변

3

코드가 작동합니까? 그렇다면 여기에 같은 코드를 더 잘 보이는 버전이 있습니다.

(let ((smaller-edge (min width height))) 
    (gimp-image-resize image smaller-edge smaller-edge 0 0)) 
+1

버전이 분명히 깨끗해 보이더라도 작동합니다. 감사! 김프와 스키마에 익숙하지 않아, 나는 많은 유용한 방법을 알지 못했습니다. 불행히도 이것은 여전히 ​​내 문제를 해결하지 못합니다. – zdyn