반응형
이번 포스트에서는 매직완드를 스크립트로 실행하는 방법을 설명 드리겠습니다.
포토샵의 매직 완드는 일반적인 스크립트로는 작성이 불가능하기 때문에 scriptListner 를 통하여 추출된 코드를 응용하여 개발을 해야 합니다. scriptListner 는 포토샵에서 이루어지는 거의 모든 기능에 대하여 출력을 해주기 때문에 일반적인 스크립트로 작성이 불가능한 기능에 대하여 개발을 해야 할 때 이용하기 좋은 멋진 플러그인 입니다.
나중에 한번 따로 설명을 드리도록 하겠습니다.
복잡하게 설명할 것 없이 바로 코드 갑니다. 이런 류의 코드는 직접 짜는 것이 거의 불가능하기 때문에 그냥 복붙하셔서 사용하시는 것이 가능 좋겠습니다.
function selectbyMagicWand(_x, _y, tolnc, anti, conti,merg){
var idsetd = charIDToTypeID( "setd" );
var desc103 = new ActionDescriptor();
var idnull = charIDToTypeID( "null" );
var ref53 = new ActionReference();
var idChnl = charIDToTypeID( "Chnl" );
var idfsel = charIDToTypeID( "fsel" );
ref53.putProperty( idChnl, idfsel );
desc103.putReference( idnull, ref53 );
var idT = charIDToTypeID( "T " );
var desc104 = new ActionDescriptor();
var idHrzn = charIDToTypeID( "Hrzn" );
var idPxl = charIDToTypeID( "#Pxl" );
desc104.putUnitDouble( idHrzn, idPxl, _x );
var idVrtc = charIDToTypeID( "Vrtc" );
var idPxl = charIDToTypeID( "#Pxl" );
desc104.putUnitDouble( idVrtc, idPxl, _y );
var idPnt = charIDToTypeID( "Pnt " );
desc103.putObject( idT, idPnt, desc104 );
var idTlrn = charIDToTypeID( "Tlrn" );
desc103.putInteger( idTlrn, tolnc );
var idMrgd = charIDToTypeID( "Mrgd" );
desc103.putBoolean( idMrgd, merg );
var idAntA = charIDToTypeID( "AntA" );
desc103.putBoolean( idAntA, anti );
var idCntg = charIDToTypeID( "Cntg" );
desc103.putBoolean( idCntg, conti );
executeAction( idsetd, desc103, DialogModes.NO );
}
총 6개의 입력값을 갖는 함수로 정리를 하였습니다.
각 함수의 인자는 아래와 같은 속성을 갖습니다.
- _x : 숫자 : 매직완드의 포인터 X좌표
- _y : 숫자 : 매직완드의 포인터 Y 좌표
- tolnc : 숫자 0 ~ 255 : tolerance, 선택된 색상 값의 확장 범위. 0 일경우 완전히 같은 색상일 경우만 선택된다.
- anti : boolean : True or False 를 입력하며 경계 영역의 부드러운 처리여부
- conti : boolean : True or False 를 입력하며 연속된 영역 안에서만 할 것인지 화면 전체로 할 것인지
- merge : boolean : True or False 를 입력하며 현재 레이어만 대상으로 할것인지 전체 레이어로 할 것인지
바로 아래 옵션에 해당되는 옵션들 입니다.
시제 사용하실 때는 아래와 같이 사용하시면 됩니다.
// 좌상단 1,1 위치의 색상을 pick 하여 선택 영역 생성
selectbyMagicWand(0, 0, 0, false, true, true)
참고로 x, y 좌표 값은 -1 한 값을 입력하시면 됩니다.
사용하시면서 궁금하신 내용이 있으시면 뎃글 남겨주세요~
감사합니다.
반응형
'DEV > Adobe Script' 카테고리의 다른 글
[포토샵스크립트] color fill 하기 (0) | 2020.04.02 |
---|---|
[포토샵스크립트] 파일을 이미지로 저장하기 save option 설정 (6) | 2020.02.19 |
[포토샵스크립트] 레이어 컨텐츠 영역 선택하기 (0) | 2020.01.23 |
[포토샵스크립트] PSD 모든 레이어 자동 저장, 하위 폴더 포함 (레이어 크기로 이미지 저장) (6) | 2019.12.13 |
[포토샵스크립트] Instagram 용 파노라마 사진 자르기 (0) | 2019.12.04 |