본문 바로가기

유용한정보

포토샵 유용한 스크립트 - JPG로 바로 저장

[목적] 

지정키를 한번 눌러서 자동으로 PSD원본 파일이 있는 폴더에 JPG 파일이 생성되도록 하기 위함.


저 같은 경우 쇼핑몰 운영을 하다보니 상품페이지를 포토샵으로 만드는 작업을 많이 합니다.

PSD로 작업한 파일을 최종적으로 JPG로 변환해서 FTP에 업로드를 하게 되는데, 업무에 양이 많이 때문에 반복되는 작업은 될수 있는한 

한번의 클릭이라도 줄이는게 작업시간을 줄이는게 되고  손에도 무리가 덜오게 됩니다.


JPG로 변환하는 방법은 save for web(웹으로 저장) 과 save as(다른 이름으로 저장) 두가지입니다.

두 방법이 JPG 결과물를 만드는것은 같지만 차이점이 하나 있습니다.

Save as 는 경로가 PSD 파일 원본이 있는 폴더가 처음에 지정되어 열리고, Save for web은 마지막에 내보내기한 폴더기 처음에 지정되서 열립니다.


제 경우는 파일을 정리할 때 같은 폴더에 PSD원본과 JPG 파일, 그리고 이미지 소스들을 저장하기 때문에 GIF파일 생성 외에는, 한번이라도 손이 더 가는 save for web은 사용하지 않습니다.


Save as를 사용해서 JPG로 저장하는 과정을 "액션 기능"을 사용해도 되지만, 저는 스크립트를 사용하고 스크립트를 F1 지정키로 사용해서 작업이 끝나면

F1 키를 한번만 누르면 자동으로 PSD 원본파일이 있는 폴더에 JPG 파일이 생성이 됩니다.


이 방법을 설명하도록 하겠습니다.



스크립트 설치




스크립트 파일

jpg.jsx


위의 파일을 다운받아 포토샵의 스크립트 경로에 넣어 줍니다.

C:\Program Files\Adobe\Adobe Photoshop CC 2014\Presets\Scripts




포토샵이 실행중이었다면 종료하고 다시 실행하면 스크립트에 넣어준 파일명이 보입니다.

옆에 F1이 보이는 것은 이 스크립트를 "F1"에 지정키로 사용했기 때문입니다. 

그 내용은 하단에 설명하도록 할게요.




main();

function main(){

if(!documents.length) return;

//Reset Custom Options.

//app.eraseCustomOptions( 'a7ba92a0-d6f8-11df-937b-0800200c9a66' ); return;

Count =0;

try{

var desc1 = app.getCustomOptions('a7ba92a0-d6f8-11df-937b-0800200c9a66');

Count = desc1.getInteger(0);

}catch(e){

var win = new Window("dialog","File increment");

win.pnl1 = win.add('panel');

win.grp1 = win.pnl1.add('group');

win.grp1.st1 = win.grp1.add('statictext',undefined,"File Suffix Number start...");

win.grp1.et1 = win.grp1.add('edittext',undefined,"1");

win.grp1.et1.preferredSize=[50,20];

win.grp1.et1.onChanging = function() { 

  if (this.text.match(/[^\-\.\d]/)) { 

    this.text = this.text.replace(/[^\-\.\d]/g, ''); 

  } 

}

win.grp10 = win.pnl1.add('group');

win.grp10.process = win.grp10.add('button',undefined,'Okay');

win.grp10.process.onClick = function(){

    Count = Number(win.grp1.et1.text);

    win.close(1);

}

win.center();

win.show();

    }

try{

var Name = decodeURI(activeDocument.name).replace(/\.[^\.]+$/, '');

var Path = decodeURI(activeDocument.path);

var saveFile = File(Path + "/" + Name  + ".jpg")

SaveJPEG(saveFile, 10);                               <= 이부분의 숫자가 퀄리티입니다.

Count++;

var desc2 = new ActionDescriptor();

desc2.putInteger(0, Count); 

app.putCustomOptions('a7ba92a0-d6f8-11df-937b-0800200c9a66', desc2, true );

}catch(e){alert(e + "\r@ Line " + e.line);}

}

function SaveJPEG(saveFile, jpegQuality){

var doc = activeDocument;

if (doc.bitsPerChannel != BitsPerChannelType.EIGHT) doc.bitsPerChannel = BitsPerChannelType.EIGHT;

jpgSaveOptions = new JPEGSaveOptions();

jpgSaveOptions.embedColorProfile = true;

jpgSaveOptions.formatOptions = FormatOptions.STANDARDBASELINE;

jpgSaveOptions.matte = MatteType.NONE;

jpgSaveOptions.quality = jpegQuality; 

activeDocument.saveAs(saveFile, jpgSaveOptions, true,Extension.LOWERCASE);

}   

function zeroPad(n, s) { 

n = n.toString(); 

while (n.length < s) n = '0' + n; 

return n; 

};

 


jpg.jsx 파일을 메모장에서 열면 위와 같은 내용입니다.

여기서 건드릴 부분은 딱 한곳입니다.


JPG 퀄리티를 몇으로 할거냐?

저는  FTP의 용량 때문에 10을 사용하고 있지만 그 부분을 사용자가 바꿔줄 수 있습니다.


적색으로 표시된 부분의 숫자를 원하는 퀄리티 숫자로 변경해주면 자동으로 저장됩니다.

최고 퀄리티는 12인거는 아시죠?



단축키 설정




포토샵 메뉴에서 Edit > keyboard Shortcuts 을 클릭합니다.

단축키는 Alt + Shift + Ctrl + K





File > Scripts > jpg 를 열어서 빈칸에 "F1"이나 본인이 지정하고 싶은 키가 있으면 누르고, 오른쪽 상단에 "OK"를 누르면 완료됩니다.



설명이 좀 길었지만 모든 과정은 넉넉히 2분도 안걸립니다.

이로써 앞으로 "F1"키만 누르면 작업하고 있는 파일이 있는 위치의 폴더에 스크립트로 지정된 JPG 퀄리티로 JPG파일이 생성됩니다.

너무 편리하지 않은가요?



[주의]

같은 파일명의 파일이 저장되게 되면 덮어씌우기 할거냐는 경고창이 뜨는데 이 스크립트는 무시하고 덮어씌웁니다.

무조건 원본파일명의 JPG파일이 생성됩니다.



도움이 되셨다면 공감을 눌러주세요. ^^