문제

필요합니다 만들다 imagemagick 또는 Linux 플랫폼에서 사용할 수있는 다른 명령 줄 도구가있는 계층화 된 PSD 파일. Linux 서버 에서이 작업을 수행해야하므로 Photoshop 스크립팅을 사용할 수 없습니다.

아래의 Imagemagick 명령은 단일 레이어가있는 PSD 파일을 만듭니다. 여기서 두 개의 이미지 (여기 : 플라즈마 프랙탈)는 서로 아래에 배치됩니다. (Imagemagick 6.5.3-10 2009-07-31 Q16, MacPorts에서 최신 사용 가능합니다.)

convert -size 100x100 plasma:fractal plasma:fractal -append out.psd

각 이미지가 자체 레이어에있는 PSD 파일을 어떻게 만들고, 한 레이어는 다른 레이어 바로 위에 있습니까?

아니면이 작업을 수행 할 수있는 다른 명령 줄 도구가 있습니까?

업데이트: 김프 명령 라인 이외의 다른 옵션이 있습니까?

도움이 되었습니까?

해결책

Imagemagick이 작동하지 않으면 볼 것입니다 김프 명령 줄.

다음 명령은 대화식 콘솔에서 2 층 PSD 파일을 만들었습니다.

> (gimp-image-new 200 200 0)
(1)
> (gimp-layer-new 1 200 200 0 "layer-1" 100 0)
(2)
> (gimp-layer-new 1 200 200 0 "layer-2" 100 0)
(3)
> (file-psd-save 0 1 0 "test.psd" "test.psd" 0 0)
> (gimp-image-add-layer 1 2 -1)
> (gimp-image-add-layer 1 3 -1)
> (file-psd-save 0 1 1 "test.psd" "test.psd" 0 0)

이는 스크립트 -FU 스크립트 (.SCM 파일)로 변환해야하며 다음과 같은 것과 함께 명령 행에서 실행할 수 있습니다.

gimp -i -b '(your-script-name "test.psd" 200 200)' -b '(gimp-quit 0)'

다른 팁

아래 명령 줄을 사용합니다. Photoshop에서 생성 된 PSD를 열 때 어떤 문제도 발생하지 않았지만 모든 레이어는 배경 레이어로 나타나며 레이어 순서를 편집하기 위해 먼저 실제 레이어로 변환해야합니다.

Window의 명령 줄은 다음과 같습니다. 이미지 목록 (IM1.XXX, IM2.XXX 등, IM1은 하단 레이어)을 고려하여 레이어에 대한 레이블 목록 ( "label1", "label2"...) :

convert ^ ( ^ -page +0+0 ^ -label "label1" ^ im1.xxx[0] ^ -background none ^ -mosaic ^ -set colorspace RGB ^ ) ^ ( ^ -page +0+0 ^ -label "label2" ^ "im2.xxx"[0] ^ -background none ^ -mosaic ^ -set colorspace RGB ^ ) ^ ( ^ -clone 0--1 ^ -background none ^ -mosaic ^ ) ^ -alpha Off ^ -reverse ^ "out.psd"

즉, 각 레이어마다

( ^ -page +0+0 ^ -label "optional_label" ^ im1.xxx[0] ^ -background none ^ -mosaic ^ -set colorspace RGB ^ )

레이어의 레이블/이름은 선택 사항입니다 (제거 -label 없다면.) [0] 안에 im1.xxx[0] Exif에 축소판이있는 경우 이미지 파일에서 첫 번째 이미지를 검색합니다.

UNIX/OSX에서는 백 슬래시로 괄호를 보호해야하며 라인 연속 문자도 \:

\( \ -page +0+0 \ -label "optional_label" \ im1.xxx[0] \ -background none \ -mosaic \ -set colorspace RGB \ \)

이미지 이름에 특수 숯이있는 경우 " (예 : "c:\my im1.png") 아무런 문제없이.

-Adjoin을 사용하여 이미지 시퀀스를 결합 할 수 있습니다.

convert -size 100x100             \
        -alpha set plasma:fractal \
        -alpha set plasma:fractal \
        -adjoin                   \
        out.psd
  • PSD 코더에는 알파 채널이 필요합니다.
  • 이미지의 순서는 하단 레이어에서 최상위 레이어입니다.
  • 설정에 따라 Photoshop 및 Gimp에는 많은 호환성 문제가 있습니다.

사용 :

  • Imagemagick 6.5.4-6
  • Photoshop CS2

다음은 유용한 링크입니다.

두 번째 링크는 다음과 함께 사용하는 것입니다 PHP, 그러나 그것은 imagemagick을 실행하고, 전부가 아니라 명령 만 사용합니다. PHP 구문, 줄만 exec 암호.

내가 당신을 돕기를 바랍니다!

나는 Jon Galloway에 동의합니다. 김프 콘솔이 더 나은 선택입니다. 다음은 내 스크립트입니다.

(define (pngtopsd width height png-paths psd-path)
(define (add-layers image png-paths) 
    (if (null? png-paths) 0 
        (let* 
            ((png (car png-paths))
            (new-layer (car (gimp-file-load-layer 0 image (car png)))))

            (gimp-image-insert-layer image new-layer 0 -1)
            (gimp-item-transform-2d new-layer 0 0 1 1 (cadr png) (caddr png) (cadddr png))
            (add-layers image (cdr png-paths))
        )
    ))

(let* 
    ((png (car png-paths))
    (image (car (gimp-file-load 1 (car png) (car png))))
    (drawable (car (gimp-image-get-active-layer image))))

    (gimp-image-resize image width height 0 0)
    (gimp-item-transform-2d drawable 0 0 1 1 (cadr png) (caddr png) (cadddr png))       
    (add-layers image (cdr png-paths))
    (file-psd-save 0 image drawable psd-path psd-path 1 0)
    (gimp-image-delete image)
))

이 스크립트를 이름으로 파일에 넣으면됩니다. "pngtopsd.scm" 김프 "스크립트"디렉토리 내부 ("C : Program Files gimp 2 share gimp 2.0 scripts " Windows의 경우) 및 각 레이어의 변환 (번역 또는 회전)을 사용하여 PNG 사진 목록에서 계층화 된 PSD를 만들 수 있습니다. 사용 샘플 :

gimp-console-2.8.exe -i -b              ^
  "(pngtopsd (list                      ^
   (list \"c:/../1.png\" 0 500 500)     ^
   (list \"c:/.../2.png\" 0.7 200 1000) ^
   (list \"c:/.../3.jpg\" -0.5 1000 0)) ^
   \"c:/.../result.psd\")"

거기 (list \"c:/.../2.png\" 0.7 200 1000) 수단:

  • 0.7은 그림의 회전 각도 (라디안에서)입니다.
  • 200 1000은 이미지에서 X와 Y Shift입니다.

imageMagick으로 레이어링 된 PSD를 만들 수 있지만 첫 번째 이미지는 실제로 미리보기 이미지 (즉, 모든 레이어의 복합재)로 사용됩니다.

convert -size 100x100 plasma:fractal plasma:fractal plasma:fractal out.psd

2 계층 PSD를 생성합니다.

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