[AE脚本示例] 遍历效果并创建文件夹

今天我想做做内置效果笔记, 于是想先遍历所有效果, 并创建对应的.md文件

用到的脚本方法与关键点

  • effects
  • fsName (文件的特定平台的完整路径名)

源码

var effects = app.effects;
var effects_store = {};

// 引入File类
var File = File || $.global.File;

// 获取当前脚本文件所在的文件夹路径
var scriptFile = File($.fileName);
var scriptFolder = scriptFile.parent.fsName;

// 遍历所有效果
for (var i = 0; i < effects.length; i++) {
    var effect = effects[i];
    var cat = effect.category;

    // 将效果添加到字典中
    if (!effects_store.hasOwnProperty(cat)) {
        effects_store[cat] = [];
    }
    effects_store[cat].push(effect.displayName);
}

// 遍历储存的效果字典
for (var category in effects_store) {
    if (effects_store.hasOwnProperty(category)) {
        var effs = effects_store[category];

        // 有的效果没有分类, 所以分类名为空, 
        // 如果你也想获取这些效果, 请在else里处理
        if (category) {
            // 创建文件夹,文件夹名字为 category
            // 保存在脚本目录下的cache目录里
            var folderPath = scriptFolder + "/cache/" + category;
            var folder = new Folder(folderPath);
            if (!folder.exists) {
                folder.create();
            }

            // 遍历effs,并创建文件
            for (var i = 0; i < effs.length; i++) {
                var fileName = effs[i] + ".md"; // 文件名为效果名称
                var filePath = folderPath + "/" + fileName;

                // 打印下文件路径吧
                $.writeln(filePath);

                var file = new File(filePath);
                if (!file.exists) {
                    file.open("w");
                    file.close();
                }
            }
        }
    }
}

给TA充电
共{{data.count}}人
人已充电
AEAE开发AE插件/脚本脚本开发

【AE脚本】下拉菜单快速选择图层 | DropTune

2023-6-19 15:47:58

AEAE开发脚本开发

[AE脚本] 笔记向: 获取所有效果的更改参数

2023-7-6 18:24:19

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
今日签到
搜索