Photoshop的脚本:app.activeDocument是未定义(Photoshop scri

2019-10-19 14:32发布

我想在脚本访问当前打开的文档,但它是不确定的。 但我已经在Photoshop中打开的文档。 我应该以某种方式初始化呢? 这里是我的代码

function ProcessDocumentWithoutXML()
{  
g_rootDoc      = app.activeDocument;
g_progBar      = new ProgressBar();

if (app.activeDocument != null)
{
    ProcessLayersWithoutXML(g_rootDoc);
    alert("Done!");
} else {
    alert("Missing active document");
}
}

ProcessDocumentWithoutXML();

Answer 1:

为了为它工作

g_rootDoc      = app.activeDocument;

需要是功能外时(除非在源文档中传递给该功能)。

修订后的代码:

if (documents.length != 0)
{
   g_rootDoc = app.activeDocument;
   // g_progBar = new ProgressBar();  // no worky in cs2
   ProcessLayersWithoutXML(g_rootDoc);
   alert("Done!");
}
else
{
    alert("Missing active document");
}


function ProcessDocumentWithoutXML()
{  

}

ProcessDocumentWithoutXML();

function ProcessLayersWithoutXML()
{
}


Answer 2:

如果你是在一个窗口中运行的Photoshop和ExtendedScript在其他窗口中运行你的代码,你需要添加的第一行

“#target Photoshop中”。

在你的js脚本(不包括双引号)。



文章来源: Photoshop scripting: app.activeDocument is undefined