芊葉狼七初来乍到lv0

一杯茶,一台电脑,代码写一天

概览

发布的

订单

邀请码

关注

粉丝

收藏

设置

  • 原理是 先调用AE提供的创建空对象API,这时候它会在素材箱生成一个新的空对象,我们规定了唯一的空对象名字,如果素材箱存在该空对象,那么用AE提供的替换API对合成里面的空对象进行替换,这样素材箱新生成的空对象就闲置下来可以直接删除。如果素材箱不存在规定的空对象名,那么用AE提供的API对合成的空对象的源(也就是素材箱里面的)进行重命名。每次创建空对象,脚本都会完整遍历素材箱,通过一系列的筛选条件,选出真正的空对象,然后比对空对象名字。【app.project.item(i)】其中的i代表着素材箱所有素材包括文件夹的ID数字,是固定的,只要知道ID号就能定位该素材在素材箱的位置。app.project.activeItem指的是当前激活的合成窗口,等价于上面的app.project.item(i),用for遍历就行。

    【AE脚本】如何优雅的使用空对象
  • 另外使用 mshta 传递的字符串疑似有字数限制,我初步得出460个字符
    如果不想用mshta,那么也可以用回两个cmd,缺点是会有一个一闪而过的CMD窗口
    我发现给两个cmd添加start 会有大概率未响应,以前用着也还好,反正非常迷
    cmd = 'cmd.exe /c cmd.exe /c "echo ' + string + ' | clip"';

    【AE脚本】案例:把信息传递到系统剪贴板
  • // 如果cmd.exe经常卡死,可以试试另一种调用vbs方法
    cmd = 'mshta vbscript:clipboarddata.setdata("text","' + str + '")(close)';

    【AE脚本】案例:把信息传递到系统剪贴板
  • 修复可能存在的bug 也就是start多了一个空双引号
    cmd = 'cmd.exe /c start "" /b /min cmd.exe /c "echo ' + string + ' | clip"';

    【AE脚本】案例:把信息传递到系统剪贴板
  • 解决一闪而过的CMD,可以试试添加 start /min
    cmd = 'cmd.exe /c start /min cmd.exe /c "echo ' + string + ' | clip"';

    【AE脚本】案例:把信息传递到系统剪贴板
个人中心
今日签到
搜索