使用方法
1.在项目面板选择一个合成,单击运行按钮
2.没了
运行逻辑
1.获取当前工程路径,获取选择合成名称(比如 Comp 1)
2.判断同级目录是否有合成名.aep( Comp 1.aex)
3.如果没有,则减少工程,然后保存文件,然后撤销减少工程。(方便打包其他合成)
源码
/**
* 选择一个合成,运行此脚本。基于选择合成减少项目,并且另存到同级目录。
* 源码:https://www.yuelili.com/?p=17977
*/
// 函数功能区
function reduceProject() {
var myProjectFile = app.project.file
var selComp = app.project.selection[0]
if (selComp instanceof CompItem) {
var trg_project_name = selComp.name
trg_path = myProjectFile.path + '/' + trg_project_name + ".aep"
var trg_file = File(trg_path)
if (!trg_file.exists) {
app.project.reduceProject(selComp)
app.project.save(new File(trg_file))
app.executeCommand(16);
} else {
alert("目标文件已存在!")
}
} else {
alert("请在项目面板选择一个合成")
}
}
// UI界面
var panelGlobal = this;
var palette = (function () {
var palette = (panelGlobal instanceof Panel) ? panelGlobal : new Window("palette");
if (!(panelGlobal instanceof Panel)) palette.text = "一键减少工程";
palette.orientation = "column";
palette.alignChildren = ["center", "top"];
palette.spacing = 10;
palette.margins = 16;
var reduce_it = palette.add("button", undefined, undefined, { name: "reduce_it" });
reduce_it.text = "Do it";
reduce_it.onClick = reduceProject
palette.layout.layout(true);
palette.layout.resize();
palette.onResizing = palette.onResize = function () { this.layout.resize(); }
if (palette instanceof Window) palette.show();
return palette;
}());