脚本
是一系列的命令,它告知应用程序执行一系列操作。您可以在大多数 Adobe 应用程序中使用脚本来自动执行重复性任务、执行复杂计算,甚至使用一些没有通过图形用户界面直接显露的功能。例如,您可以指示 After Effects 对一个合成中的图层重新排序、查找和替换文本图层中的源文本,或者在渲染完成时发送一封电子邮件。
After Effects 脚本使用 Adobe ExtendScript 语言,该语言是 JavaScript 的一种扩展形式。ExtendScript 文件具有
.jsx
或
.jsxbin
文件扩展名。
有关 After Effects 可用脚本功能的描述,请参阅
After Effects 开发中心
中的“After Effects 脚本指南”。
After Effects 自带若干脚本,这些脚本自动安装在“Scripts”文件夹中。
通过“文件”>“脚本”菜单可以使用加载的脚本。如果您在 After Effects 运行期间编辑脚本,则必须保存更改以便应用更改。如果您在 After Effects 运行期间在“Scripts”文件夹中放置了一个脚本,则必须重新启动 After Effects 以便该脚本显示在“脚本”菜单中,但您可以使用“运行脚本文件”命令立即运行这一新脚本。
可以从“窗口”菜单的底部使用“ScriptUI Panels”文件夹中的脚本。如果编写脚本的目的是在一个可停靠面板中提供用户界面,则应将该脚本放在“ScriptUI”文件夹中。ScriptUI 面板的工作方式很像 After Effects 用户界面中的默认面板。
要停止运行脚本,请按 Esc 键。
要从命令行运行脚本,请从命令行调用 afterfx.exe。以
-r
开关和要运行的脚本的完整路径为参数。此命令不会打开 After Effects 应用程序的新实例;它在现有实例中运行脚本。
示例(对于 Windows):
afterfx -r c:\script_path\example_script.jsx
您可以使用脚本编辑器(ExtendScript 工具包的一部分)编写自己的要用于 After Effects 的脚本。ExtendScript 工具包为您创建、调试和测试自己的脚本提供了一个便利界面。有时,您需要做的只是对现有脚本稍加修改以便满足您的要求;这样的小改动常常无需多少计算机编程和脚本语言知识就能完成。
有关更多信息,请参阅
After Effects 脚本指南
。
使用以下脚本方法,脚本可以将属性添加到“基本图形”面板和导出“动态图形”模板:
属性 canAddToMotionGraphicsTemplate() 方法
app.project.item(index).layer(index).propertySpec.canAddToMotionGraphicsTemplate(comp)
测试是否可以将属性添加到指定合成的基本图形面板。如果可以添加属性,则返回 true,否则返回 false。如果不能添加属性,可能是因为它不是受支持的属性类型之一或属性已被添加到该合成。After Effects 显示警告对话框。
支持的属性类型是:
数字滑块(即单值数值属性,如“变换”>“不透明度”或“滑块控件”表达式控制效果)
属性 addToMotionGraphicsTemplate() 方法
app.project.item(index).layer(index).propertySpec.addToMotionGraphicsTemplate(comp)
将属性添加给指定合成的基本图形面板。如果属性添加成功,则返回 true,否则返回 false。如果未添加属性,可能是因为它不是受支持的属性类型之一或属性已被添加到该合成。After Effects 将显示警告对话框。使用
canAddToMotionGraphicsTemplate()
方法来测试是否可以将属性添加到“动态图形”模板。
CompItem motionGraphicsTemplateName 属性
app.project.item(index).motionGraphicsTemplateName
在基本图形面板中为合成读取或写入名称属性。基本图形面板中的名称用于导出的动态图形模板的文件名称,如 My Template.mogrt。以下示例设置活动合成的名称,然后将其返回为警告:
app.project.activeItem.motionGraphicsTemplateName = "My Template";
alert(app.project.activeItem.motionGraphicsTemplateName);
字符串;读取/写入。
CompItem exportAsMotionGraphicsTemplate() 方法
app.project.item(index).exportAsMotionGraphicsTemplate(doOverWriteFileIfExisting, file_path)
将合成导出为动态图形模板。 如果动态图形模板导出成功,则返回 true,否则返回 false。基本图形面板中的名称用于动态图形模板的文件名称,如 My Template.mogrt。使用 motionGraphicsTemplateName 属性设置名称。(可选)指定保存动态图形模板文件的文件夹的路径。如果未指定,则文件会保存在当前用户的“Essential Graphics”文件夹中:
macOS
:
/Users//Library/Application Support/Adobe/Common/Essential Graphics/
Windows
:
C:\Users\\AppData\Roaming\Adobe\Common\Essential Graphics\
如果项目自上次保存后有更改,After Effects 会提示用户保存项目。为了避免出现这种情况,请在导出“动态图形”模板之前使用项目
save()
方法。
CompItem openInEssentialGraphics() method
app.project.item(index).openInEssentialGraphics()
在“基本图形”面板中打开合成。
在
Adobe Add-ons
网站上查找脚本、项目和其他有用项。
Dan Ebberts 在
他的 MotionScript 网站的脚本部分
提供了脚本教程和实用脚本。
Lloyd Alvarez 在他的
After Effects 脚本网站
上提供了一个实用脚本集。
AE Enhancers 论坛
提供了示例脚本和关于 After Effects 中脚本(以及表达式和动画预设)的有用信息。
Dale Bradshaw 在他的
Creative Workflow Hacks 网站
上提供了脚本和技巧。
Christopher Green 在
他的网站
上提供了许多实用脚本
。