Photoshop Javascript脚本保存和关闭文档

时间:2012-05-29 08:57:00

标签: javascript scripting photoshop

我出于某种原因无法保存; 我正在使用Photoshop CS5.1(如果这确实是问题的原因)

error 8800: General Photoshop error occurred. 
This functionality may not be available in this version of Photoshop.
Could not save a copy as C:\...\Temp001.jpeg0011338281522" 
because the file could not be found


var thistimestamp = Math.round(new Date().getTime() / 1000);
saveFile = new File( "/Users/Barny/My Pictures/Temp001" +thistimestamp+ ".jpeg" )
saveOptions = new JPEGSaveOptions();
saveOptions.embedColorProfile = true;
saveOptions.formatOptions = FormatOptions.STANDARDBASELINE;
saveOptions.matte = MatteType.NONE;
saveOptions.quality = 9;
app.activeDocument.saveAs(saveFile, saveOptions, true,Extension.LOWERCASE);

我喜欢保存和关闭的脚本,但我一直收到此错误。我正在使用Photoshop CS5.1(如果这确实是问题的原因)

1 个答案:

答案 0 :(得分:6)

保存时出现错误General Photoshop error通常意味着保存路径出现问题。 Photoshop正在尝试保存到不存在的位置。假设文件夹C:/Users/Barney/Pictures/Temp001存在,则此方法有效:

var thistimestamp = Math.round(new Date().getTime() / 1000);
saveFile = new File( "c:/Users/Barney/Pictures/Temp001/" +thistimestamp)
saveOptions = new JPEGSaveOptions();
saveOptions.embedColorProfile = true;
saveOptions.formatOptions = FormatOptions.STANDARDBASELINE;
saveOptions.matte = MatteType.NONE;
saveOptions.quality = 9;

app.activeDocument.saveAs(saveFile, saveOptions, true,Extension.LOWERCASE);

我做的唯一更改是路径字符串saveFile = new File("C:/Users/Barney/Pictures/Temp001/" + thistimestamp)注意我添加了C:以使其成为绝对路径并在Temp001之后添加/以指定这是一个文件夹而不是最终文件名的一部分。 My Pictures实际应该是Pictures(我的图片只是一个别名),如果您从地址栏复制地址,就会得到这些内容。我还删除了+ ".jpeg",因为photoshop会为您处理文件扩展名。

如果您要创建新文件夹,则必须使用Folder对象:

var myfolder = new Folder("c:/Users/Barney/Pictures/Temp001/");
myfolder.create();