Photoshop Javascript脚本:重命名文件和saveAs

时间:2013-08-05 11:07:12

标签: javascript photoshop file-rename

我在使用JS和photoshop时遇到了新的麻烦。我想要做的是在当前文档的文件名中删除“ Online ”这个词,然后将带有新文件名的JPG保存在不同的文件夹中。

在adobe参考的帮助下,我提出了以下脚本:

//Path where the final jpg should be saved
var JPGquality = 12;
var docPath="C:\Users\user\Desktop\test";
var docName='';

docName = activeDocument.name;

//Set new file name by replacing "_Online_" with "_"

var NewName = docName.replace("_Online_", "_");



var saveFile = new File(docPath+'/'+NewName+ '.jpg');


//Save JPG 

function SaveJPEG(saveFile, jpegQuality) {

jpgSaveOptions = new JPEGSaveOptions();
jpgSaveOptions.embedColorProfile = true;
jpgSaveOptions.formatOptions = FormatOptions.STANDARDBASELINE;
jpgSaveOptions.matte = MatteType.NONE;
jpgSaveOptions.quality = jpegQuality; //1-12
activeDocument.saveAs(saveFile, jpgSaveOptions, true,Extension.LOWERCASE);
}

脚本运行但没有错误但没有任何反应。如果有人能告诉我我做错了什么会很有帮助。希望有人帮我弄清楚如何解决这个问题;)

3 个答案:

答案 0 :(得分:1)

我用这个:

function saveAsJPG() {

    jpgFile = new File(outputFolder + "/" + _CardFileName + ".jpg");
    jpgSaveOptions = new JPEGSaveOptions();
    jpgSaveOptions.embedColorProfile = true;
    jpgSaveOptions.formatOptions = FormatOptions.STANDARDBASELINE;
    jpgSaveOptions.matte = MatteType.NONE;
    jpgSaveOptions.quality = 12;
    docRef.saveAs(jpgFile, jpgSaveOptions, true, Extension.LOWERCASE);

}

答案 1 :(得分:0)

尝试在docPath中使用正斜杠:

var docPath="C:/Users/user/Desktop/test";

\t(制表符)和\u(Unicode序列的开头)在JS字符串中具有特殊含义。

或者你可以逃脱它们,当然:

var docPath="C:\\Users\\user\\Desktop\\test";

答案 2 :(得分:0)

在javascript中为photoshop自动化编写路径的最好方法是'/ c / users / user /'这适用于mac和windows,你不需要转义反斜杠