标签: extendscript

After Effects/ExtendScript:使用库并导入.jsx文件?

我是After Effects脚本的新手,但在浏览器中有很多JavaScript经验.

  1. 如何导入.jsx文件?
  2. 我可以使用诸如underscore.js之类的js库吗?
  3. AE脚本有哪些好的资源?(理想的信息图表项目)

after-effects extendscript jsx

9
推荐指数
1
解决办法
7048
查看次数

什么是#targetengine?

我之前唯一的经验#targetengine是,当我#targetengine "session";在InDesign中编写脚本时,我习惯将对话框转换为调色板.但是当我试图找出如何编写菜单脚本时,我开始看到它弹出以其他方式使用并使用除了之外的术语(目标?)session.

Adobe喜欢假设每个想要编写脚本的人有时都是经验丰富的程序员,所以我没有找到关于这是什么的明确解释.

所以,当我使用时#targetengine,我在做什么?我可以使用除以外的任何术语"session"吗?一些搜索建议此功能与全局变量有关; 那是这样吗?如果是这样,如何在不重新启动InDesign的情况下清除它们?这是JavaScript的东西还是ExtendScript/InDesign功能?

javascript extendscript adobe-indesign

8
推荐指数
1
解决办法
4324
查看次数

在Photoshop脚本中保存每个用户或每个文档的首选项

我正在使用ExtendScript在JavaScript中处理Photoshop脚本.我的脚本允许一些用户输入,我想在使用之间保存它.也就是说,我正在寻找一种方法来保存特定键下的简单字符串或数值,以便我能够在后续使用脚本时访问它.简单地说,我想保存我的脚本的首选项.我怎么做?

更好的是能够在每个文档的基础上保存至少一些首选项.那可能吗?也就是说,我可以用文档存储任意位数据吗?

extendscript photoshop-script

8
推荐指数
2
解决办法
3537
查看次数

在ExtendScript中获取错误的堆栈跟踪

当我在ExtendScript中捕获错误时,我希望能够记录其堆栈跟踪.似乎错误在ExtendScript中不包含堆栈跟踪,所以我正在尝试将错误添加到堆栈跟踪.

我知道获得堆栈跟踪的唯一方法是$.stack.该字段$.stack包含您访问该字段时的当前堆栈跟踪.

我的第一次尝试是创建自己的包含堆栈的错误对象.该Error对象非常特殊,因为它可以获取创建它的代码的行和文件名.例如,

try {
    throw new Error("Houston, we have a problem.");
}
catch (e) {
    $.writeln("Line: " + e.line);
    $.writeln("File: " + e.fileName);
    $.writeln("Message: " + e.message);
}
Run Code Online (Sandbox Code Playgroud)

将打印:

Line: 2
File: ~/Desktop/Source1.jsx
Message: Houston, we have a problem.
Run Code Online (Sandbox Code Playgroud)

我不认为用这种能力创建你自己的对象是可能的.我能得到的最接近的是:

function MyError(msg, file, line) {
    this.message = msg;
    this.fileName = file;
    this.line = line;
    this.stack = $.stack;
}

try {
    throw new MyError("Houston, we have a problem.", $.fileName, $.line);
}
catch (e) { …
Run Code Online (Sandbox Code Playgroud)

adobe extendscript indesign-server adobe-indesign

8
推荐指数
1
解决办法
2611
查看次数

哪些ECMAScript标准符合Adobe的ExtendScript实现?(如果有的话)

我是一名JavaScript开发人员,他刚刚开始深入研究Adobe的ExtendScript技术,旨在提高我在Illustrator PDF表单生成中的许多企业日常任务的工作效率和工作流程.

在第一个实例中,我认为它是一些ECMAScript标准的实现,增加了文档对象模型的属性实现,用于访问文件系统的API和其他一些东西.我希望Creative Suite(CS6)的最新版本实现了ECMAScript 5.

我的第一个惊喜是没有在互联网上找到关于ExtendScript引擎的实现细节的任何参考.我的第二个惊喜是在查询Array.prototype某些ECMAScript 5方法时发现undefined,这让我怀疑实现的标准兼容性.

任何人都可以提供有关该实现细节的任何参考,如果它符合任何ECMAScript标准和哪个版本?

非常感谢提前.

javascript adobe extendscript

8
推荐指数
2
解决办法
1079
查看次数

需要在 ExtendScript 中对对象进行 JSON 字符串化

我正在使用 ExtentdScript 处理我的 Indesign 文档链接的元数据信息。

我想使用将对象转换为字符串,JSON.stringify但是当我使用它时,我收到错误消息:

can't execute script in target engine.

如果我linkObjStr = JSON.stringify(linksInfObj); 从下面的代码中删除,那么一切正常。

JSON.stringifyExtendScript 中的等价物是什么,或者是否有任何其他可能性来显示linksInfObj其正确的内容[object object]

for (var i = 0, len = doc.links.length; i < len; i++) {

    var linkFilepath = File(doc.links[i].filePath).fsName;
    var linkFileName = doc.links[i].name;

    var xmpFile = new XMPFile(linkFilepath, XMPConst.FILE_INDESIGN, XMPConst.OPEN_FOR_READ);
    var allXMP = xmpFile.getXMP();

    // Retrieve values from external links XMP.
    var documentID = allXMP.getProperty(XMPConst.NS_XMP_MM, 'DocumentID', XMPConst.STRING);
    var instanceID = allXMP.getProperty(XMPConst.NS_XMP_MM, 'InstanceID', XMPConst.STRING); …
Run Code Online (Sandbox Code Playgroud)

javascript adobe extendscript adobe-indesign

8
推荐指数
1
解决办法
3572
查看次数

Photoshop 批量应用“最后一个滤镜”适用于除液化之外的所有滤镜

此脚本采用最后应用的过滤器并在所有选定的图层和蒙版上重复该过滤器。(它旨在避免将图层折叠到智能对象中以便批量应用过滤器的需要)。

但是,其中有一个我无法弄清楚的错误:它对于高斯模糊之类的东西效果很好,但是对于液化,它会在历史记录中记录应用了过滤器,但图层保持不变。

重现步骤:1.模糊图层 1。2.选择图层 2(蒙版)和 3(未蒙版)3.运行脚本4.重复 1-3,但使用液化而不是模糊。

#target photoshop 

var defaultRulerUnits = preferences.rulerUnits; preferences.rulerUnits = Units.PIXELS;
var doc = app.activeDocument; 
var layers = doc.layers;
var typeArray = new Array ();
var isim = new Array();


cTID = function(s) { return app.charIDToTypeID(s); }; sTID = function(s) { return app.stringIDToTypeID(s); };

function repeatlastfilter() {
    runMenuItem(cTID("LstF"), true);
}  

function checklayermask() {
    try {
        Select_Layermask();
    }
    catch (err) { return }
    repeatlastfilter();
    Select_Original_Layer();       
    }

// MAIN …
Run Code Online (Sandbox Code Playgroud)

javascript photoshop extendscript photoshop-script photoshop-sdk

8
推荐指数
0
解决办法
251
查看次数

Adobe ExtendScript调试

支持PDF和网络上缺乏信息.我碰巧在博客中发现一篇文章提到$ .write()或$ .writeln()会将一个字符串写入javascript控制台.非常有用.有谁知道这个$对象是否有任何其他属性或方法?

adobe extendscript

7
推荐指数
1
解决办法
4754
查看次数

在Adobe InDesign CS5中处理TextBox中的文本

如何在Adobe InDesign CS5中调整大小时使用TextBox中的文本进行一些操作?

主要目标是将每一行的最后一个字分开,以实现类似自定义连字符的操作.

是否可以使用JavaScript(或ExtendScript?)?

谢谢.

UPDATE

我试着在评论中描述我的问题

我需要一个关于ExtendScript的示例,它可以找到文本框尺寸并根据尺寸连接文本,然后我想在文本框调整大小上创建一个事件,这会在每次调整大小后执行相同的操作.

javascript string textbox extendscript adobe-indesign

7
推荐指数
1
解决办法
1445
查看次数

如何从Extendscript中调用python或shell脚本?

我有一个需要在Extendscript脚本中调用的python脚本.是否有可以执行此操作的库函数?我尝试在文档和许多其他在线资源中找到解决方案,但到目前为止我没有任何工作.任何帮助表示赞赏.

photoshop adobe extendscript adobe-illustrator adobe-premiere

7
推荐指数
2
解决办法
2986
查看次数