2009-04-26 16 views
0

Photoshop에서 사진 스캔/자르기 프로세스를 자동화하려고합니다. 한 번에 3 장의 사진을 스캔 한 다음 Photoshop의 사진 자르기 및 곧게 펴기 명령을 사용하여 3 개의 개별 이미지를 만듭니다. 그런 다음 새로 생성 된 이미지 각각을 PNG로 저장하고 싶습니다.Photoshop을 자동화하는 방법은 무엇입니까?

JSX 스크립트를 살펴 보았는데 많은 기대를했습니다. 필자는 JavaScript 나 VBScript 등을 사용하여 Photoshop에서 자동화 할 수 있다고 설명 했습니까?

+0

Google을 사용해 보셨나요? 힌트 CodeProject ... –

+0

Google은 결코 나에게 발생하지 않았습니다.. 링크하십시오. – AngryHacker

답변

1

어도비 포토샵 포럼에서 실제로 답변을 얻었습니다. Photoshop CS4는 JavaScript, VBScript를 통해 전적으로 스크립팅 가능하며 디버거, 감시 윈도우, 색상 코딩 등 기대했던 모든 기능을 갖춘 정말 킥 알맞은 개발자 IDE가 제공됩니다. 나는 완전히 감동했다.

는 다음 참조에 대한 추출물 :

당신이 그들을 existingFileName # 001.png 명명 모든 파일을 분할 기존 및 배치 떨어져 새로운 폴더를 생성합니다 다음 스크립트를 실행에 넣어 수 있습니다 새 폴더 (편집) 전체 게시물

#target Photoshop 
app.bringToFront; 
var inFolder = Folder.selectDialog("Please select folder to process"); 
if(inFolder != null){ 
    var fileList = inFolder.getFiles(/\.(jpg|tif|psd|)$/i); 
    var outfolder = new Folder(decodeURI(inFolder) + "/Edited"); 
    if (outfolder.exists == false) outfolder.create(); 
    for(var a = 0 ;a < fileList.length; a++){ 
    if(fileList[a] instanceof File){ 
     var doc= open(fileList[a]); 
     doc.flatten(); 
     var docname = fileList[a].name.slice(0,-4); 
     CropStraighten(); 
     doc.close(SaveOptions.DONOTSAVECHANGES); 
     var count = 1; 
     while(app.documents.length){ 
      var saveFile = new File(decodeURI(outfolder) + "/" + docname +"#"+ zeroPad(count,3) + ".png"); 
      SavePNG(saveFile); 
      activeDocument.close(SaveOptions.DONOTSAVECHANGES) ; 
      count++; 
      } 
     } 
    } 
}; 
function CropStraighten() { 
    function cTID(s) { return app.charIDToTypeID(s); }; 
    function sTID(s) { return app.stringIDToTypeID(s); }; 
    executeAction(sTID('CropPhotosAuto0001'), undefined, DialogModes.NO); 
}; 
function SavePNG(saveFile){ 
    pngSaveOptions = new PNGSaveOptions(); 
    pngSaveOptions.embedColorProfile = true; 
    pngSaveOptions.formatOptions = FormatOptions.STANDARDBASELINE; 
    pngSaveOptions.matte = MatteType.NONE; 
    pngSaveOptions.quality = 1; 
    pngSaveOptions.PNG8 = false; //24 bit PNG 
    pngSaveOptions.transparency = true; 
    activeDocument.saveAs(saveFile, pngSaveOptions, true, Extension.LOWERCASE); 
} 

function zeroPad(n, s) { 
    n = n.toString(); 
    while (n.length < s) n = '0' + n; 
    return n; 
}; 

방문 here.

+0

Photoshop 스크립트를 작성하는 데 JavaScript/ExtendScript를 사용하는 것이 좋습니다. 다른 언어 (VBScript, AppleScript 등)의 사용은 권장되지 않으며 더 이상 DOM 지원이 제공되지 않습니다. –

1

Photoshop 액션을 사용해 보셨습니까? 지금은 스캐닝 부분에 대해서는 없지만 나머지 부분은 작업으로 쉽게 수행 할 수 있습니다.

2

방금이 스크립트를 발견했습니다. 자동으로 자르기 & 사진을 똑바로 만들고 각 디렉토리에 지정한 결과를 저장하십시오.

http://www.tranberry.com/photoshop/photoshop_scripting/PS4GeeksOrlando/IntroScripts/cropAndStraightenBatch.jsx

저장하고이를 PS => 파일에서 실행 한 후 현지에 => 명령 => 나는 그것이 스크립트에서 두 번 클릭하여 직접 실행할 수 있습니다 말했다 주석에서 발견

PS 검색 Mac Finder 또는 Windows 탐색기.

Backup gist for the script here

+0

이 링크는 질문에 대답 할 수 있지만 답변의 핵심 부분을 여기에 포함시키고 참조 용 링크를 제공하는 것이 좋습니다. 링크 된 페이지가 변경되면 링크 전용 답변이 유효하지 않게 될 수 있습니다. –

+0

내 코드가 아니므로 요지로 넣을 것입니다. – Robert