【问题标题】:After Effects / ExtendScript: Using libraries and importing .jsx files?After Effects / ExtendScript:使用库和导入 .jsx 文件?
【发布时间】:2013-01-18 13:39:59
【问题描述】:

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

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

【问题讨论】:

    标签: extendscript after-effects jsx


    【解决方案1】:
    1. 在脚本旁边包含 .jsx

    使用:

    #include "includeme.jsx"
    

    编辑 2:

    您还可以使用以下语法包含文件:

    //@include "includeme.jsx"
    

    哪个(恕我直言)是更好的方法。它不会破坏 linter 并且更加 javascript-ish。

    1. 您可以使用普通的旧 javascript(ES3 语法)。如果您包含的库使用某些特定于浏览器的 js(如 console.log()),您将收到错误消息

    2. 最佳资源是AECS6 scripting guidehttp://aescripts.com 上还有很多开源脚本,你可以查看

    编辑 1:您还可以包含这样的文件。

    var path = ((File($.fileName)).path); // this is the path of the script
    // now build a path to another js file
    // e.g. json lib https://github.com/douglascrockford/JSON-js
    var libfile = File(path +'/_libs/json2.js');
    if(libfile.exists){
      $.evalFile(libfile);
    }
    

    【讨论】:

    • 感谢费边!我早些时候尝试过,但它没有用。不知道我做错了什么。
    • //@ 语法是否适用于其他预处理器指令,例如 #target indesign#strict on
    • @Sturm 我认为 //@target 有效。 //@严格我不知道。你为什么不试一试并报告呢? ;)
    • @fabianmoronzirfas,我看不出有什么区别。使用该行,删除该行,将其更改为#strict off 等。当尝试在脚本中写入只读属性时,该命令(当设置为“on”时)应该引发运行时错误.我在脚本顶部附近输入了app.activeScriptUndoMode = UndoModes.AUTO_UNDO; 行来测试它。但是,无论#strict 行是什么,我都会收到错误消息。
    • 可怜的旧扩展脚本。它在某些部分是如此破碎。感谢您的报告
    猜你喜欢
    • 2021-08-18
    • 1970-01-01
    • 1970-01-01
    • 2011-08-05
    • 2020-04-11
    • 1970-01-01
    • 2017-06-04
    • 2019-08-09
    • 1970-01-01
    相关资源
    最近更新 更多