1

我是使用 JS 和 Photoshop 的新手,遇到了一些麻烦。我想要做的是摆脱当前文档文件名中的“在线”一词,然后将具有新文件名的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);
}

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

4

3 回答 3

2

我用这个:

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);

}
于 2016-03-05T00:16:03.603 回答
0

尝试在您的 : 中使用正斜杠docPath

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

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

当然,您也可以逃避它们:

var docPath="C:\\Users\\user\\Desktop\\test";
于 2013-08-05T11:20:07.897 回答
0

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

于 2013-08-20T16:55:58.393 回答