ADOBE After Effects CS3 Guide des scripts [fr]

GUIDE DES SCRIPTS
© Copyright 2007 Adobe Systems Incorporated. Tous droits réservés.
Guide des scripts d’After Effects® d’Adobe® Creative Suite 3
Remarque : toutes les informations contenues dans le présent document sont la propriété d’Adobe Systems Incorporated. Toute reproduction ou diffusion du présent document (que ce soit au format électronique ou sous une forme imprimée), en tout ou partie, sous quelque forme ou par quelque moyen que ce soit, électronique, mécanique, photocopie, enregistrement ou autre, sans l’autorisation écrite préalable d’Adobe Systems Incorporated, est strictement interdite. Le logiciel décrit dans ce document est cédé sous licence et ne peut être utilisé et/ou copié que conformément aux conditions de cette licence.
Toute référence à des noms de société dans les exemples n’a qu’une valeur explicative et n’a pas pour objet de citer des organisations réelles.
Adobe, le logo Adobe, After Effects, Photoshop et Bridge sont des marques ou des marques déposées d’Adobe Systems Incorporated aux Etats-Unis et/ou dans d’autres pays.
Apple, Mac, Macintosh et Mac OS sont des marques d’Apple Computer, Inc., déposées aux Etats-Unis et dans d’autres pays. Microsoft et Windows sont des marques ou des marques déposées de Microsoft Corporation aux Etats-Unis et dans d’autres pays. JavaScript et toutes les marques contenant Java sont des marques ou des marques déposées de Sun Microsystems, Inc. aux Etats-Unis et dans d’autres pays. UNIX est une marque déposée de The Open Group.
Toutes les autres marques appartiennent à leurs propriétaires respectifs.
Si ce guide accompagne un logiciel assorti d’un contrat de licence, le guide et le logiciel dont il traite sont cédés sous licence et ne peuvent être copiés ou utilisés que conformément aux conditions générales de cette licence. Sauf autorisation spécifiée dans la licence, aucune partie de ce guide ne peut être reproduite, enregistrée ou transmise sous quelque forme que ce soit, par quelque moyen que ce soit, électronique, mécanique, enregistrement ou autre, sans l’autorisation écrite préalable d’Adobe Systems Incorporated. Nous attirons votre attention sur le fait que le contenu du présent guide est protégé par les lois sur la propriété intellectuelle et ce, même s’il n’accompagne pas un logiciel assorti d’un contrat de licence.
Les informations contenues dans ce guide sont données à titre purement indicatif. Elles peuvent être modifiées sans préavis et ne constituent pas un engagement de la part d’Adobe Systems Incorporated. Adobe Systems Incorporated ne peut être tenu pour responsable des erreurs ou des inexactitudes apparaissant dans les informations fournies par ce guide.
Adobe Systems Incorporated, 345 Park Avenue, San Jose, California 95110, Etats-Unis.

Présentation

Le Guide des scripts d’After Effects explique comment gérer vos projets After Effects en créant des procédures à l’aide de scripts. Cet ensemble de fonctions est disponible dans Adobe® After Effects® CS3 Professional.
La cré atio n de scr ipt a u nivea u sys tèm e per met de s impl ifi er v otr e st ruct ure de r end u et d’é vite r le s nom breuse s opérations de pointer-cliquer répétitives. Si vous avez déjà eu l’occasion d’utiliser des expressions ou d’autres techniques de type JavaScript pour l’animation, ou de travailler avec la création de script système dans AppleScript ou Visual Basic, vous percevrez rapidement l’étendue des possibilités offertes par la création de script dans l’application After Effects. Avec un peu de pratique et une bonne connaissance du langage JavaScript, vous pouvez prendre le contrôle de votre structure graphique.

Si vous êtes novice en matière de création de script

After Effects est un outil visuel comportant une interface graphique utilisateur dont les éléments vous sont familiers, notamment les menus, les panneaux et les icônes. Cette interface est le moyen le plus accessible de travailler avec l’application. La création de script est conçue pour les situations dans lesquelles cette méthodologie implique une répétition fastidieuse ou de lourdes opérations de recherche et de tri qui pourraient être automatisées. La création de script permet d’automatiser les tâches rébarbatives et répétitives. Elle est également utile pour tirer parti de la puissance du rendu en réseau dans les cas où le dossier de contrôle est moins puissant (et moins pratique à configurer). Pour obtenir des exemples d’actions pouvant être effectuées par les scripts, reportez-vous à la section « Exemples », page 175.
Si vous êtes novice en matière de création de script, consultez le manuel Adobe Introduction to Scripting, qui présente les concepts de base de la création de script et décrit les différents langages disponibles, y compris JavaScript. JavaScript et les autres langages de création de script sont orientés objet ; ce manuel expose ainsi les concepts de base de la programmation orientée objet et des modèles d’objet de document.
Même si vous n’avez aucunement l’intention d’apprendre le langage JavaScript, vous pouvez néanmoins exploiter la puissance de la création de script par le biais de solutions tierces telles que Rush Network Render Queue, une interface graphique utilisateur permettant de configurer des rendus distribués depuis tout ordinateur du réseau sans devoir les configurer sur les machines de manière individuelle.
Les utilisateurs qui créent des scripts peuvent par ailleurs partager leurs scripts avec les autres utilisateurs pour une mise en commun efficace des ressources. Il est fréquent que les grands studios emploient ce type d’utilisateurs maîtrisant la création de script. Les utilisateurs plus novices peuvent quant à eux visiter des forums tels que ceux accessibles à l’adresse suivante :
www.adobeforums.com.

A propos de ce guide

Ce guide est destiné aux utilisateurs chargés de la gestion d’une structure graphique (laquelle peut inclure d’autres applications scriptables) et qui souhaitent créer des scripts pour personnaliser After Effects.
Cette fonctionnalité est également offerte par des solutions tierces de gestion de rendu en réseau. Ces produits comportent des éléments logiciels conçus pour faciliter la gestion de ce processus. Il est ainsi possible de tirer profit de cette fonctionnalité sans devoir procéder à une édition manuelle des scripts.
3
Présentation Edition de scripts
4
Le cœur d’une application scriptable est le modèle d’objet. Lorsque vous utilisez Adobe After Effects, vous créez des projets, des compositions et des éléments de file d’attente de rendu, ainsi que tous les éléments qu’ils contiennent, c’est-à-dire le métrage, les images, les solides, les calques, les masques, les effets et les propriétés. En ter mino log ie de cré atio n de scri pt, c hac un de ces élé men ts es t un obje t. C e gui de d écr it le s obj ets Jav aSc ript définis pour des projets After Effects.
Une grande partie de ce que la création de script permet de réaliser peut également être effectuée par le biais de l’interface utilisateur After Effects. Une connaissance approfondie de l’application elle-même est, par conséquent, essentielle pour savoir comment utiliser cette fonctionnalité.
Le modèle d’objet d’After Effects est composé d’un projet, d’éléments, de compositions, de calques et d’éléments de file d’attente de rendu. Chaque objet possède ses propres attributs particuliers et chaque objet d’un projet After Effects possède sa propre identité (bien que tous ne soient pas accessibles pour l’écriture de scripts). Vous devez maîtriser le modèle d’objet d’After Effects pour pouvoir créer des scripts.
La création de script dans After Effects repose sur ECMAScript (plus précisément, sur la 3e édition de la norme ECMA-262). Pour plus d’informations sur cette norme, consultez le site www.ecma-international.org. Pour exploiter le potentiel de la création de script, vous devez également comprendre la rédaction de script au niveau système (pour une intégration avec AppleScript ou l’application en ligne de commande Terminal sur Mac OS et les scripts de ligne de commande sur les systèmes Windows) et posséder une connaissance préalable de JavaScript.
REMARQUE : les objets JavaScript habituellement appelés « propriétés » sont appelés « attributs » dans ce guide, afin d’éviter toute confusion avec la définition du terme « propriété » propre à After Effects (une valeur animable d’un effet, d’un masque ou d’une transformation dans un calque spécifique).

Expressions

Bien que les expressions et l’interface de création de script d’After Effects utilisent toutes les deux le langage JavaScript et aient accès à chacune des propriétés des calques, il s’agit de deux entités complètement différentes. Alors que les expressions n’ont pas accès aux informations des scripts (comme les variables et les fonctions), un script peut être rédigé pour créer ou éditer une expression.
Etant donné que les expressions et la création de script utilisent toutes les deux le langage JavaScript, la connaissance de l’une de ces fonctions facilite la compréhension de l’autre.

Equations

Les équations ne font plus partie d’After Effects, cette fonctionnalité ayant été remplacée par la création de script et les expressions. Tous les opérateurs mathématiques et logiques communs à ECMAScript sont disponibles pour la création de script.
Par exemple, avec les expressions, il est possible de simuler le rebond d’une balle en appliquant des règles mathématiques à un calque « balle ». Avec la création de script, vous pouvez créer une interface utilisateur complète permettant d’animer une balle rebondissante et un calque d’ombre au moyen de critères entrés par l’utilisateur.

Edition de scripts

After Effects inclut un éditeur JavaScript. Pour le démarrer, choisissez Fichier > Scripts > Ouvrir l’éditeur de script. Cet éditeur et débogueur de script, appelé ExtendScript Toolkit, fournit une interface conviviale vous permettant de créer et de tester vos propres scripts.
Vous pouvez utiliser tout éditeur de texte pour créer, éditer et enregistrer des scripts, mais il est recommandé de choisir une application qui n’ajoute pas automatiquement des informations d’en-tête lors de l’enregistrement des fichiers et qui enregistre avec l’encodage Unicode (UTF-8).
4
Présentation Activation des fonctionnalités complètes de création de script
5
Les applications Windows utiles pour l’édition de scripts incluent EM Editor ou le Bloc-notes (assurez-vous
de définir le codage UTF-8 dans les options d’enregistrement).
Les applications Mac OS utiles pour l’édition de scripts incluent BBEdit ou TextEdit intégré à OS X
(assurez-vous de définir Unicode [UTF-8] comme type d’enregistrement dans les préférences).

Format JSX d’ExtendScript

After Effects prend en charge ExtendScript, l’implémentation étendue de JavaScript d’Adobe. ExtendScript est utilisé par toutes les applications Adobe qui disposent d’une interface de script. Outre l’implémentation du langage JavaScript conformément aux spécifications ECMA 262 et E4X ECMA 357, ExtendScript offre des fonctionnalités et utilitaires supplémentaires :
ExtendScript Toolkit : Pour vous aider à développer, déboguer et tester vos scripts, ExtendScript offre un
environnement interactif de développement et de test, ExtendScript Toolkit. Cet environnement définit également un objet de débogage global, l’objet dollar ($), ainsi qu’un utilitaire de génération de rapports pour les éléments ExtendScript, l’interface Reflection d’ExtendScript.
Objets File et Folder : Dans la mesure où la syntaxe des chemins varie considérablement d’un système
d’exploitation à l’autre, Adobe ExtendScript définit des objets indépendant de la plate-forme au système de fichiers sous-jacent.
File et Folder permettant d’offrir un accès
Module d’interface utilisateur ScriptUI : Le module ScriptUI d’ExtendScript permet de créer des éléments
d’interface utilisateur et d’interagir avec ces derniers. ScriptUI offre un modèle d’objet pour les fenêtres et les éléments de contrôle d’interface utilisateur que vous pouvez utiliser pour créer une interface utilisateur pour vos scripts.
Outils et utilitaires : ExtendScript comporte également des outils et des fonctionnalités tels qu’un utilitaire
de localisation qui permet de spécifier des chaînes d’interface utilisateur en plusieurs langues, ainsi que des fonctions globales d’affichage de messages brefs dans des boîtes de dialogue (
Communication interapplication : ExtendScript met en place un environnement commun de création de script
alert, confirm et prompt).
pour l’ensemble des applications Adobe et permet les communications interapplication par le biais des scripts.
Communication externe : ExtendScript offre un objet Socket qui vous permet de communiquer avec des
systèmes distants à partir de vos scripts After Effects.
Ces fonctionnalités, ainsi que plusieurs autres, sont décrites en détail dans le manuel JavaScript Tools Guide, fourni avec After Effects et disponible à partir du Pôle de développement Adobe (http://www.adobe.fr/devnet/
Les fichiers de script ExtendScript portent l’extension
.jsx, une variation de l’extension .js standard qui
caractérise normalement les fichiers JavaScript. Les scripts After Effects doivent être dotés de l’extension de
.jsx pour pouvoir être correctement reconnus par l’application. Tout fichier texte au format UTF-8 et
fichier portant l’extension
.jsx est admis en tant que fichier ExtendScript.
Vous pouvez utiliser ExtendScript Toolkit pour exporter une version binaire d’un fichier ExtendScript portant l’extension
.jsxbin. Ce fichier binaire ne sera pas forcément utilisable avec toutes les fonctionnalités
d’intégration de script proposées par After Effects.
).

Activation des fonctionnalités complètes de création de script

Pour des raisons de sécurité, les fonctionnalités de création de script opérant en dehors de l’application After Effects (telles que l’ajout et la suppression de fichiers et de dossiers sur des volumes, ou l’accès au réseau) sont désactivées par défaut.
5
Présentation Accès aux scripts et écriture des scripts
6
Pour activer ces fonctionnalités, choisissez Préférences > Général, puis sélectionnez « Autoriser les scripts à écrire des fichiers et à accéder au réseau ». Vous pouvez alors effectuer les opérations suivantes :
écrire dans des fichiers ;
créer des dossiers et définir le dossier actif ;
créer une connexion par socket (pour plus d’informations sur cet utilitaire JavaScript, consultez le manuel
JavaScript Tools Guide).
Adobe met à votre disposition un débogueur JavaScript complet, appelé ExtendScript Toolkit. Ce dernier est désactivé par défaut de façon à ce que les utilisateurs non expérimentés ne le rencontrent pas. Lors de l’édition ou de l’écriture de scripts, Toolkit permet de diagnostiquer les problèmes de script plus rapidement. Pour activer Toolkit sur la machine locale en cas d’erreur de script, choisissez Préférences > Général, puis cochez la case Activer le débogage JavaScript. Pour obtenir des informations détaillées sur ExtendScript Toolkit, consultez le manuel JavaScript Tools Guide.
Toolkit ne fonctionne que lors de l’exécution d’un script, pas avec les expressions, même si les expressions utilisent également JavaScript.

Accès aux scripts et écriture des scripts

Pour créer et modifier des scripts pour After Effects, vous pouvez utiliser ExtendScript Toolkit ou une application externe d’édition de texte créant des fichiers avec l’encodage de texte Unicode UTF-8. Evitez les applications telles que Microsoft Word qui ajoutent par défaut des informations d’en-tête aux fichiers ; ces informations créent des erreurs de ligne 0 dans les scripts, ce qui empêche leur exécution.
Un script peut résider à tout endroit, mais pour apparaître dans le menu Scripts, il doit être sauvegardé dans le dossier Scripts, lui-même situé dans le dossier de l’application After Effects.
L’application n’intègre pas de méthode permettant l’enregistrement dans un script d’une série d’actions réalisées dans After Effects, comme cela est possible avec les scripts Adobe Photoshop®. Les scripts sont créés en dehors d’After Effects, puis exécutés à l’intérieur ou à l’extérieur de ce programme au moyen d’une ligne de commande, d’ExtendScript Toolkit ou d’un logiciel de gestion de rendu tiers.

Menu et dossier Scripts

Les scripts After Effects résident dans le dossier Scripts, situé dans le même dossier que votre fichier d’application After Effects. Bien qu’un fichier de script puisse résider à un autre endroit, seuls les scripts contenus dans ce dossier Scripts lors du démarrage de l’application figurent automatiquement dans le menu Scripts.
Pour exécuter un script n’apparaissant pas dans le menu Scripts, sélectionnez Fichier > Scripts > Exécuter le fichier de script, puis choisissez le script dans la boîte de dialogue Ouvrir. Une autre solution consiste à envoyer un script à After Effects à partir d’ExtendScript Toolkit, d’une ligne de commande (sous Windows) ou d’AppleScript (sous Mac OS).
Pour apparaître dans la boîte de dialogue Ouvrir, votre script doit être doté de l’extension de fichier
.jsx.

Dossiers Shutdown (arrêt) et Startup (démarrage)

Le dossier Scripts contient deux sous-dossiers appelés Startup et Shutdown. After Effects exécute automatiquement, dans l’ordre alphabétique, les scripts contenus dans ces dossiers lors du démarrage et de la fermeture de l’application.
Vous pouvez placer dans le dossier Startup les scripts que vous souhaitez exécuter au démarrage de l’application. Une fois l’application initialisée, ces scripts seront exécutés et tous les modules seront chargés.
6
Présentation Accès aux scripts et écriture des scripts
7
La création de script partageant un environnement global, tout script exécuté au démarrage peut définir des variables et des fonctions disponibles pour tous les scripts. Dans tous les cas de figure, les variables et les fonctions, une fois définies en exécutant un script les contenant, sont conservées dans les scripts suivants au cours de la même session After Effects. Une fois l’application fermée, toutes ces variables et fonctions définies au niveau global sont supprimées. Il est essentiel de nommer les variables de façon unique afin de ne pas remplacer par erreur une variable globale, censée être préservée pendant toute une session.
Des attributs peuvent également être ajoutés aux objets existants tels que l’objet Application (voir la section « Objet Application », page 19) pour étendre l’application à d’autres scripts.
Les scripts contenus dans le dossier Shutdown sont exécutés au moment de la fermeture de l’application. Ces exécutions sont réalisées une fois le projet fermé, mais avant la fermeture de toute autre application.

Menu Fenêtre et dossier ScriptUI Panels (panneaux ScriptUI)

Dans le dossier Scripts, vous pouvez créer un autre dossier nommé ScriptUI Panels. Utilisez ce dossier pour les scripts dont l’interface utilisateur apparaît dans un panneau natif (et non dans une palette flottante, une boîte de dialogue ou une fenêtre). L’avantage d’un panneau réside dans sa capacité à être ancré dans d’autres panneaux, comme les panneaux Projet, Composition et Navigation, ce qui lui permet de paraître ainsi mieux intégré à l’application. Tout comme les panneaux natifs, les scripts du dossier ScriptUI Panels sont accessibles à partir du menu Fenêtre.
Au lieu de créer un objet Window et d’y intégrer des commandes, les scripts du dossier ScriptUI Panels utilisent l’objet « this » représentant le panneau. Par exemple, le code suivant ajoute un bouton à un panneau :
var myPanel = this;
myPanel.add("button", [10, 10, 100, 30], "Tool #1");
myPanel.show();
Si votre script crée son interface utilisateur dans une fonction, vous ne pouvez pas utiliser l’objet « this » pu isq u’il s e rap por te à l a fo ncti on e lle- mêm e et n on a u pa nne au. D ans ce c as, vou s de vez util ise r l’ obj et « th is » en tant qu’argument de votre fonction. Par exemple :
function createUI(thisObj) {
var myPanel = thisObj;
myPanel.add("button", [10, 10, 100, 30], "Tool #1");
return myPanel;
}
var myToolsPanel = createUI(this);
myToolsPanel.show();
Vous ne pouvez pas utiliser la commande de menu Fichier > Scripts > Exécuter le fichier de script pour exécuter un script renvoyant à un objet « this ». Pour permettre à votre script de fonctionner avec un objet Window (accessibl e à pa rtir du menu Fichier > Scripts) ou ave c un p anneau nat if (accessible à partir du menu Fenêtre), vérifiez que l’objet « this » est bien un objet Panel. Par exemple :
function createUI(thisObj) {
var myPanel = (thisObj instanceof Panel) ? thisObj : new Window("palette", "My Tools",
[100, 100, 300, 300]);
myPanel.add("button", [10, 10, 100, 30], "Tool #1");
return myPanel;
}
var myToolsPanel = createUI(this);
myToolsPanel.show();
7
Présentation Envoi d’un script à After Effects à partir du système
8

Envoi d’un script à After Effects à partir du système

Si vous savez comment exécuter un script à partir de la ligne de commande sous Windows ou avec AppleScript, vous pouvez envoyer un script directement à l’application After Effects ouverte pour que celle-ci l’exécute automatiquement.

Inclusion de la création de script After Effects dans une ligne de commande (Windows)

Voici plusieurs exemples de commandes pour la ligne de commande Windows qui envoient un script After Effects à l’application sans passer par l’interface utilisateur After Effects.
Dans le premier exemple, vous devez copier et coller votre script After Effects directement dans la ligne de commande puis l’exécuter. Le texte du script s’affiche entre guillemets après la commande
afterfx.exe -s "alert("You just sent an alert to After Effects")"
Une autre solution consiste à spécifier l’emplacement du fichier JSX à exécuter. Par exemple :
afterfx.exe -r c:\myDocuments\Scripts\yourAEScriptHere.jsx
afterfx.exe -r "c:\myDocuments\Scripts\Script Name with Spaces.jsx"
afterfx.exe -s :

Inclusion de la création de script After Effects dans un AppleScript (Mac OS)

Voici trois exemples de scripts AppleScript envoyant un fichier JSX existant contenant un script After Effects à l’application sans utiliser l’interface utilisateur After Effects pour exécuter le script.
Dans le premier exemple, vous devez copier votre script After Effects directement dans l’éditeur de script puis l’exécuter. Le texte du script s’affiche entre guillemets après la commande DoScript ; par conséquent, tout guillemet contenu dans cette chaîne doit être précédé d’une barre oblique inversée servant de caractère d’échappement, tel qu’indiqué ci-dessous :
tell application "Adobe After Effects CS3"
DoScript "alert(\"You just sent an alert to After Effects\")"
end tell
Une autre solution consiste à afficher une boîte de dialogue demandant l’emplacement du fichier JSX à exécuter, tel qu’indiqué ci-dessous :
set theFile to choose file
tell application "Adobe After Effects CS3"
DoScript theFile
end tell
Enfin, ce script est peut-être le plus utile lorsque vous travaillez directement sur l’édition d’un script JSX et souhaitez l’envoyer à After Effects pour le tester ou l’exécuter. Pour l’utiliser efficacement, vous devez spécifier l’application contenant le fichier JSX ouvert (dans cet exemple, il s’agit de TextEdit) ; si vous ne connaissez pas le nom exact de l’application, tapez ce qui s’en approche le plus à la place de « TextEdit », et AppleScript vous invitera à la localiser.
8
Présentation Essais et dépannage
9
Mettez simplement en évidence le texte de script que vous souhaitez exécuter, puis activez cet AppleScript :
(*
This script sends the current selection to After Effects as a script.
*)
tell application "TextEdit"
set the_script to selection as text
end tell
tell application "Adobe After Effects CS3"
activate
DoScript the_script
end tell
Pour plus d’informations sur l’utilisation d’AppleScript, reportez-vous au manuel AppleScript: the Definitive Guide de Matt Neuberg (éditions O’Reilly & Associates) ou AppleScript 1-2-3 de Sal Soghoian (éditions Peachpit Press).

Essais et dépannage

Tout script After Effects contenant une erreur empêchant son exécution complète génère un message d’erreur dans l’application. Ce message inclut des informations sur la nature de l’erreur et la ligne du script sur laquelle elle est survenue.
After Effects inclut par ailleurs un outil de débogage JavaScript. Pour plus de détails sur l’activation et l’utilisation du débogueur, consultez la section relative à ExtendScript Toolkit du manuel JavaScript Tools Guide.

Autres ressources d’apprentissage de la création de script

Il existe de nombreuses ressources permettant d’approfondir ses connaissances de la création de script selon la norme ECMA.
Le moteur de création de script After Effects prend en charge la 3e édition de la norme ECMA-262, y compris ses conventions de notation et lexicales, ses types, objets, expressions et instructions.
Pour obtenir une liste complète des mots-clés et opérateurs inclus avec ECMAScript, reportez-vous au document ECMA-262.pdf, disponible à l’adresse suivante : www.ecma-international.org/publications/
standards/Ecma-262.htm.
Les ouvrages traitant de JavaScript 1.2 sont également utiles à la compréhension du fonctionnement de la création de script dans After Effects. L’ouvrage JavaScript, The Definitive Guide de David Flanagan (éditions O’Reilly) constitue, en quelque sorte, une bible pour les utilisateurs de JavaScript. Une autre source tout à fait recommandable est l’ouvrage JavaScr ipt: A Beginner’s Guide de John Pollock (éditions Osborne). Ces deux ouvrages contiennent des informations concernant en particulier les extensions de JavaScript pour les navigateurs Internet, tout en offrant également des explications détaillées des principes de base de la création de script.
Il existe également des ouvrages sur l’utilisation d’AppleScript et la création de scripts de ligne de commande Windows, ces deux solutions pouvant être utilisées pour envoyer des scripts à After Effects.
9
Présentation Autres ressources d’apprentissage de la création de script
10

Variables JavaScript

La création de script partageant un environnement global, tout script exécuté au démarrage peut définir des variables et des fonctions disponibles pour tous les scripts. Dans tous les cas de figure, les variables et les fonctions, une fois définies en exécutant un script les contenant, sont conservées dans les scripts suivants au cours de la même session After Effects. Une fois l’application fermée, toutes ces variables et fonctions définies au niveau global sont supprimées. Il est essentiel de nommer les variables de façon unique de façon à ne pas remplacer par erreur une variable globale, censée être préservée pendant toute une session.

Mots-clés et syntaxe d’instructions JavaScript

Bien qu’il ne soit pas possible de fournir une ressource exhaustive décrivant l’utilisation de JavaScript, les tableaux ci-après présentent les mots-clés, les instructions, les opérateurs, la priorité et l’associativité.
Le tableau ci-dessous énumère et décrit tous les mots-clés et instructions reconnus par le moteur de création de script After Effects.
Tableau 1 Mots-clés et syntaxe d’instructions
Mot-clé/Instruction Description
break
continue
case
default
do...while
false
for
for...in
function
if/if...else
new
null
return
switch
this
JavaScript standard ; quitte la boucle en cours d’exécution.
JavaScript standard ; arrête l’exécution de l’itération de la boucle en cours.
Libellé utilisé dans une instruction switch.
Libellé utilisé dans une instruction switch lorsqu’un libellé case est introuvable.
Construction JavaScript standard. Similaire à la boucle while, excepté que l’évaluation de la condition de boucle est effectuée à la fin de la boucle.
Littéral correspondant au booléen false.
Construction de boucle JavaScript standard.
Construction JavaScript standard. Fournit un moyen aisé d’appliquer une boucle à travers les propriétés d’un objet.
Utilisé pour définir une fonction.
Constructions conditionnelles JavaScript standard.
Instruction de constructeur JavaScript standard.
Attribué à une variable, un élément de tableau ou une propriété d’objet pour indiquer qu’il ou elle ne contient pas de valeur autorisée.
Moyen JavaScript standard de renvoyer une valeur à partir d’une fonction ou de quitter une fonction.
Moyen JavaScript standard d’évaluer une express ion et de tenter de faire correspondre la valeur de l’expression à un libellé case.
Méthode JavaScript standard utilisée pour indiquer l’objet en cours.
true
undefined
var
while
with
Littéral correspondant au booléen true.
Indique que la variable, l’élément de tableau ou la propriété d’objet n’a pas encore reçu de valeur.
Syntaxe JavaScript standard utilisée pour déclarer une variable locale.
Construction JavaScript standard. Similaire à la boucle do...while, excepté que l’évaluation de la condition de boucle est effectuée au début de la boucle.
Construction JavaScript standard utilisée pour spécifier un objet à utiliser dans les instruc tions dont elle est suivie.
10
Présentation Autres ressources d’apprentissage de la création de script
11

Opérateurs JavaScript

Les tableaux ci-après énumèrent et décrivent tous les opérateurs reconnus par le moteur de création de script After Effects et indiquent la priorité et l’associativité de tous les opérateurs.
Tableau 2 Description des opérateurs
Opérateurs Description
new
delete
typeof
void
.
[]
()
++
––
~
!
*
/
%
+
<<
Alloue un objet.
Annule l’allocation d’un objet.
Renvoie le type de données.
Renvoie la valeur indéfinie.
Membre de la structure.
Elément de tableau.
Appel de fonction.
Pré- ou post-incrément.
Pré- ou post-décrément.
Négation ou soustraction unaire.
NOT au niveau bit.
NOT logique.
Produit.
Division.
Division modulo.
Addition.
Décalage vers la gauche au niveau du bit.
>>
>>>
<
<=
>
>=
==
!=
&
^
|
&&
||
?:
Décalage vers la droite au niveau du bit.
Décalage non signé vers la droite au niveau du bit.
Inférieur.
Inférieur ou égal.
Supérieur.
Supérieur ou égal.
Egal.
Différent.
AND au niveau bit.
XOR au niveau bit.
OR au niveau bit.
AND logique.
OR logique.
Conditionnel (ternaire).
11
Présentation Autres ressources d’apprentissage de la création de script
12
Opérateurs Description
=
+=
–=
*=
/=
%=
<<=
>>=
>>>=
&=
^=
|=
,
Attribution.
Attribution avec l’opération d’addition.
Attribution avec l’opération de soustraction.
Attribution avec l’opération de multiplication.
Attribution avec l’opération de division.
Attribution avec l’opération de division modulo.
Attribution avec l’opération de décalage vers la gauche au niveau du bit.
Attribution avec opération de décalage vers la droite au niveau du bit.
Attribution avec opération de décalage vers la droite non signée au niveau du bit.
Attribution avec opération AND au niveau du bit.
Attribution avec opération XOR au niveau du bit.
Attribution avec opération OR au niveau du bit.
Evaluation multiple.
Tableau 3 Priorité des opérateurs
Opérateurs (de la priorité la plus élevée à la plus faible) Associativité
[], (), .
gauche à droite
new, delete, – (négation unaire), !, typeof, void, ++, ––
*, /, %
+, – (soustraction)
<<, >>, >>>
<, <=, >, >=
==, !=
&
^
|
&&
||
?:
=, /=, %=, <<=, >>=, >>>=, &=, ^=, |=, +=, –=, *=
,
droite à gauche
gauche à droite
gauche à droite
gauche à droite
gauche à droite
gauche à droite
gauche à droite
gauche à droite
gauche à droite
gauche à droite
gauche à droite
droite à gauche
droite à gauche
gauche à droite
12

Référence JavaScript

application
project
settings
renderQueue item(s)
item(s)
item(s)
renderQueueItem(s)
outputModule(s)
socketfile foldersystem
folderItemfootageItem
proxySource proxySourcemainSource
solidSource
color
fileSource
file
placeholderSource
layer(s)
properties
compItem
OU
OU
OU
OU
mainSource & proxySource
peuvent être l’un des trois types d’élément suivants :
peuvent être l’un des trois types d’élément suivants :
Ce chapitre énumère et décrit les classes, objets, méthodes, attributs et fonctions globales définis par After Effects.
Le moteur de création de script After Effects prend en charge ExtendScript, la version étendue de JavaScript d’Adobe, qui implémente la 3e édition de la norme ECMA-262, y compris ses conventions de notation et lexicales, ses types, objets, expressions et instructions. Pour obtenir une liste complète des mots-clés et opérateurs inclus avec ECMAScript, reportez-vous au document suivante : www.ecma-international.org/publications/standards/Ecma-262.htm des mots-clés et instructions les plus courants disponibles en ECMA-262, reportez-vous à la section « Mots­clés et syntaxe d’instructions JavaScript », page 10.

Modèle d’objet d’After Effects

Au fil de votre lecture de cette section de référence, qui reprend les objets par ordre alphabétique, vous pouvez vous reporter aux schémas suivants pour avoir une vue générale de la position des différents objets dans la hiérarchie et de leur correspondance dans l’interface utilisateur.
ECMA-262.pdf, disponible à l’adresse
. Pour avoir une vue générale
Schéma hiérarchique des principaux objets de création de scripts After Effects
Notez que les objets File, Folder et Socket sont définis par ExtendScript et présentés dans le manuel JavaScript Tools Gu id e . ExtendScript définit également le module ScriptUI, jeu d’objets de contrôle d’interface utilisateur
et de fenêtres, auquel peuvent accéder les scripts After Effects. Ces objets de contrôle sont également présentés dans le manuel JavaScript Tools Guide.
La hiérarchie d’objets pour la création de script correspond à la hiérarchie de l’interface utilisateur.
13
Référence JavaScript Modèle d’objet d’After Effects
14
L’application contient un panneau Projet qui affiche un projet. Le projet contient des compositions, contenant elles-mêmes des calques. La source d’un calque peut être un fichier de métrage, un pseudo-élément ou un solide, et figure également dans le panneau Projet. Chaque calque contient des paramètres appelés propriétés, qui peuvent contenir des repères et des images clés. La file d’attente de rendu contient des éléments de file d’attente de rendu, ainsi que des paramètres de rendu et des modules de sortie. Dans le contexte de la création de script, toutes ces entités sont représentées par des objets.
REMARQUE : dans ce guide, pour éviter toute ambiguïté, le terme « attribut » fait référence aux propriétés des objets JavaScript et le terme « propriété » ou « propriété AE » fait référence aux propriétés de calque After Effects.

Liste des objets

Le tableau suivant répertorie tous les objets par ordre alphabétique et renvoie aux pages correspondantes.
Objet Description
« Fonctions globales », page 16 Fonctions disponibles au niveau global. Elles vous permettent d’afficher du texte destiné
« Objet Application », page 19 Objet global unique, disponible via son nom (
« Objet AVItem », page 32 Représente les fichiers audiovisuels importés dans After Effects.
« Objet AVLayer », page 39 Représente les calques qui contiennent des objets AVItem (calques de composition,
« Objet CameraLayer », page 50 Représente un calque de caméra dans une composition.
au débogage de script et aident à convertir des secondes en images.
app). Il donne accès aux paramètres
des objets et des applications au sein de l’application After Effects.
de métrage, de solide, de texte et de son).
« Objet Collection », page 51 Associe un jeu d’objets ou de valeurs en tant que groupe logique, et donne accès à ces
objets ou valeurs via un index.
14
Référence JavaScript Modèle d’objet d’After Effects
15
Objet Description
« Objet CompItem », page 52 Représente une composition, vous permet de la manipuler et d’obtenir des informations
« Objet FileSource », page 60 Décrit le métrage issu d’un fichier.
« Objet FolderItem », page 62 Représente un dossier du panneau Projet.
« Objet FootageItem », page 64 Représente un élément de métrage importé dans un projet, qui apparaît dans le
« Objet FootageSource », page 67 Décrit la source du fichier d’un métrage.
« Objet ImportOptions », page 73 Incorpore des options pour l’importation de fichiers dans After Effects.
« Objet Item », page 76 Représente un élément dans un projet qui apparaît dans le panneau Projet.
« Objet ItemCollection », page 79 Rassemble des éléments dans un projet.
« Objet KeyframeEase », page 81 Incorpore des valeurs de lissage d’images clés dans une propriété After Effects.
« Objet Layer », page 83 Classe de base pour les classes de calques.
« Objet LayerCollection », page 92 Rassemble des calques dans un projet.
« Objet LightLayer », page 97 Représente un calque de lumière dans une composition.
« Objet MarkerValue », page 98 Incorpore des valeurs de repère dans une propriété After Effects.
« Objet MaskPropertyGroup », page 102 Incorpore des attributs de masque dans un calque.
« Objet OMCollection », page 105 Rassemble des modules de sortie dans une file d’attente de rendu.
« Objet OutputModule », page 106 Représente un module de sortie pour une file d’attente de rendu.
sur elle.
panneau Projet.
« Objet PlaceholderSource », page 109 Décrit un pseudo-élément pour métrage.
« Objet Project », page 110 Représente un projet After Effects.
« Objet Property », page 119 Représente une propriété After Effects.
« Objet PropertyBase », page 141 Classe de base pour des classes de propriétés et de groupes de propriétés After Effects.
« Objet PropertyGroup », page 148 Représente un groupe de propriétés After Effects.
« Objet RenderQueue », page 153 Représente la file d’attente de rendu After Effects.
« Objet RenderQueueItem », page 156 Représente un élément de rendu dans une file d’attente de rendu.
« Objet RenderQueueItem », page 156 Rassemble des éléments de file d’attente de rendu dans une file d’attente de rendu.
« Objet RQItemCollection », page 163 Donne accès aux paramètres et préférences de l’application.
« Objet Shape », page 166 Incorpore la forme du contour d’un masque.
« Objet ShapeLayer », page 169 Représente un calque de forme dans une composition.
« Objet SolidSource », page 170 Décrit une couleur unie correspondant à la source d’un métrage.
« Objet System », page 171 Donne accès au système d’exploitation à partir de l’application.
« Objet TextDocument », page 173 Incorpore le texte dans un calque de texte.
« Objet TextLayer », page 174 Représente un calque de texte dans une composition.
15
Référence JavaScript Fonctions globales
16

Fonctions globales

Ces fonctions, disponibles au niveau global, sont spécifiques à After Effects. Tout objet ou fonction JavaScript peut appeler ces fonctions. Elles vous permettent d’afficher du texte JavaScript dans une zone de petite taille (3 lignes) du panneau Info et de convertir des valeurs temporelles numériques en valeurs de type chaîne, et inversement.
Fonction globale Description
clearOutput()
currentFormatToTime()
timeToCurrentFormat()
write()
writeLn()
Des fonctions globales supplémentaires pour les E/S utilisateur standard (
Efface le texte du panneau Info.
Convertit une valeur temporelle de type chaîne en valeur temporelle numérique.
Convertit une valeur temporelle numérique en valeur temporelle de type chaîne.
Ecrit du texte dans le panneau Info, sans ajout de saut de ligne.
Ecrit du texte dans le panneau Info, en ajoutant un saut de ligne à la fin.
alert, confirm et prompt) et
des fonctions statiques pour les E/S de fichier sont définies par ExtendScript. Pour plus d’informations, reportez-vous au Guide de référence JavaScript d’Adobe Bridge®.
REMARQUE : les fonctions globales d’After Effects pour les boîtes de dialogue standard et les E/S de fichier sont toujours prises en charge dans cette version, mais sont désormais obsolètes et ne seront pas prises en charge dans les prochaines versions. Pour plus d’informations, reportez-vous à la documentation relative à After Effects 6.5.

Fonction globale clearOutput()

clearOutput()
Description
Efface la sortie dans le panneau Info.
Paramètres
Aucun.
Renvoi
Aucun.

Fonction globale currentFormatToTime()

currentFormatToTime(formattedTime, fps, isDuration)
Description
Convertit une chaîne formatée d’instant d’image en nombre de secondes, selon une cadence d’image spécifiée. Par exemple, si l’instant de l’image formatée est 0:00:12 (le format de chaîne exact est déterminé par un paramètre de projet) et que la cadence d’image est de 24 i/s, l’instant sera 0,5 seconde (12/24). Si la cadence d’image est de 30 i/s, l’instant sera 0,4 seconde (12/30).
Si l’instant est une durée, le décompte des images commence à partir de zéro (0). Sinon, les images sont décomptées à partir de la première image du projet (voir la section « Attribut Project displayStartFrame », page 113).
16
Référence JavaScript Fonctions globales
17
Paramètres
formattedTime
fps
isDuration
Renvoi
Valeur d’instant de l’image, chaîne spécifiant un nombre d’images selon le format d’affichage de l’instant actuel du projet.
Nombre d’images par seconde, valeur à virgule flottante.
Facultatif. Lorsque ce paramètre est défini sur true, l’instant est une durée (mesurée à partir de l’image 0). Lorsqu’il est défini sur false (valeur par défaut), l’instant est calculé à partir de la première image du projet.
Valeur à virgule flottante, nombre de secondes.

Fonction globale timeToCurrentFormat()

timeToCurrentFormat(time, fps, isDuration)
Description
Convertit une valeur temporelle numérique (un nombre de secondes) en valeur temporelle d’image, c’est-à­dire en une chaîne formatée qui indique l’image correspondant à cet instant, selon la cadence spécifiée. Par exemple, si l’instant est 0,5 seconde et que la cadence d’image est de 24 i/s, l’image est 0:00:12 (lorsque le projet est défini sur Display Timecode). Si la cadence est de 30 i/s, l’image est 00:00:15. Le format de la chaîne de code temporel est défini par un paramètre de projet.
Si l’instant est une durée, le décompte des images commence à partir de zéro (0). Sinon, les images sont décomptées à partir de la première image du projet (voir la section « Attribut Project displayStartFrame », page 113).
Paramètres
time
fps
isDuration
Renvoi
Nombre de secondes, valeur à virgule flottante.
Nombre d’images par seconde, valeur à virgule flottante.
Facultatif. Lorsque ce paramètre est défini sur true, l’instant est une durée (mesurée à partir de l’image 0). Lorsqu’il est défini sur false (valeur par défaut), l’instant est calculé à partir de la première image du projet.
Chaîne dans le format d’affichage de l’instant actuel du projet.

Fonction globale write()

write(text)
Description
Ecrit la sortie dans le panneau Info, sans ajout de saut de ligne.
Paramètres
text
Renvoi
Aucun.
Chaîne à afficher. Elle est tronquée lorsqu’elle est trop longue pour être affichée dans le panneau Info.
17
Référence JavaScript Fonctions globales
18
Exemple
write("This text appears in Info panel ");
write("with more on same line.");

Fonction globale writeLn()

writeLn(text)
Description
Ecrit la sortie dans le panneau Info, en ajoutant un saut de ligne à la fin.
Paramètres
text
Renvoi
Chaîne à afficher.
Aucun.
Exemple
writeln("This text appears on first line");
writeln("This text appears on second line");
18
Référence JavaScript Objet Application
19

Objet Application

app
Description
Donne accès aux paramètres des objets et des applications au sein de l’application After Effects. L’objet global unique est toujours disponible via son nom,
Les attributs de l’objet Application fournissent l’accès aux objets spécifiques dans After Effects. Les méthodes de l’objet Application peuvent créer un projet, ouvrir un projet existant, contrôler le mode Dossier de contrôle, vider la mémoire et quitter l’application After Effects. Lors de la fermeture de l’application After Effects, celle-ci ferme le projet ouvert en demandant à l’utilisateur d’enregistrer ou d’ignorer les modifications, et crée un fichier de projet comme nécessaire.
Attributs
Attribut Référence Description
app.
project
language
version
buildName
buildNumber
isWatchFolder
isRenderEngine
settings
onError
exitCode
« Attribut Application project », page 28 et « Objet Project », page 110
« Attribut Application language », page 24
« Attribut Application version », page 30 Numéro de version de l’application After Effects.
« Attribut Application buildName », page 21
« Attribut Application buildNumber », page 22
« Attribut Application isWatchFolder », page 24
« Attribut Application isRenderEngine », page 24
« Attribut Application settings », page 30 et « Objet RQItemCollection », page 163
« Attribut Application onError », page 26 Fonction de rappel appelée lorsqu’une erreur survient
« Attribut Application exitCode », page 24
Projet After Effects en cours.
Langue dans laquelle l’application est exécutée.
Nom de cette compilation de l’application.
Numéro de cette compilation de l’application.
Lorsque cet attribut est défini sur true, l’application locale est exécutée en mode Dossier de contrôle.
Lorsque cet attribut est défini sur true, l’application After Effects locale est exécutée en tant que moteur de rendu.
Paramètres de l’application pouvant être définis par le biais de la création de script.
dans l’application.
Code numérique d’état utilisé lors de l’exécution d’un script en externe (c’est-à-dire à partir d’une ligne de commande ou d’AppleScript). Zéro (0) indique qu’aucune erreur n’est survenue. Un nombre positif indique qu’une erreur est survenue lors de l’exécution du script.
exitAfterLaunchAndEval
saveProjectOnCrash
memoryInUse
« Attribut Application exitAfterLaunchAndEval », page 23
« Attribut Application saveProjectOnCrash », page 29
« Attribut Application memoryInUse », page 25
Lorsque cet attribut est défini sur true, l’application doit rester ouverte après l’exécution d’un script à partir de la ligne de commande sous Windows.
Lorsque cet attribut est défini sur true, le projet est enregistré au cas où l’application viendrait à se fermer de façon inattendue.
Mémoire utilisée par cette application.
19
Référence JavaScript Objet Application
20
Méthodes
Méthode Référence Description
newProject()
open()
quit()
watchFolder()
pauseWatchFolder()
endWatchFolder()
purge()
beginUndoGroup()
endUndoGroup()
beginSuppressDialogs()
endSuppressDialogs()
setMemoryUsageLimits()
setSavePreferencesOnQuit()
activate()
scheduleTask()
cancelTask()
parseSwatchFile()
« Méthode Application newProject() », page 25
« Méthode Application open() », page 26 Ouvre un projet ou une boîte de dialogue
« Méthode Application quit() », page 28 Ferme l’application.
« Méthode Application watchFolder() », page 30
« Méthode Application pauseWatchFolder() », page 27
« Méthode Application endWatchFolder() », page 23
« Méthode Application purge() », page 28 Purge un type ciblé d’informations mises en
« Méthode Application beginUndoGroup() », page 21
« Méthode Application endUndoGroup() », page 22
« Méthode Application beginSuppressDialogs() », page 21
« Méthode Application endSuppressDialogs() », page 22
« Méthode Application setMemoryUsageLimits() », page 29
« Méthode Application setSavePreferencesOnQuit() », page 30
« Méthode Application activate() », page 20 Affiche la fenêtre principale d’After Effects au
« Méthode Application scheduleTask() », page 29
« Méthode Application cancelTask() », page 22
« Méthode Application parseSwatchFile() », page 27
Crée un nouveau projet dans After Effects.
Ouvrir le projet.
Démarre le mode Dossier de contrôle ; ne renvoie rien tant que ce mode n’est pas désactivé.
Interrompt temporairement le processus de dossier de contrôle en cours.
Met fin au processus de dossier de contrôle en cours.
mémoire cache (reproduit les options de la commande Purger du menu Edition).
Regroupe les actions qui la suivent en une seule étape pouvant être annulée.
Termine un groupe d’annulation ; nécessaire seulement lorsqu’un script contient plusieurs groupes d’annulation.
Commence la suppression des boîtes de dialogue dans l’interface utilisateur.
Met fin à la suppression de boîtes de dialogue dans l’interface utilisateur.
Définit les limites d’utilisation de mémoire, telles que spécifiées dans les préférences Mémoire et cache.
Indique si les préférences doivent être enregistrées lors de la fermeture de l’application.
premier plan.
Planifie un script JavaScript pour une exécution ultérieure.
Annule une tâche planifiée.
Charge un échantillon de couleur à partir d’un fichier Adobe Swatch Exchange (ASE).

Méthode Application activate()

app.activate()
Description
Ouvre la fenêtre principale de l’application, si elle apparaît sous forme réduite ou d’icône, et l’affiche au premier plan.
Paramètres
Aucun.
Renvoi
Aucun.
20
Référence JavaScript Objet Application
21

Méthode Application beginSuppressDialogs()

app.beginSuppressDialogs()
Description
Lance la suppression des boîtes de dialogue d’erreur de script dans l’interface utilisateur. Pour reprendre l’affichage des boîtes de dialogue d’erreur, utilisez Application endSuppressDialogs() », page 22.
Paramètres
Aucun.
Renvoi
Aucun.

Méthode Application beginUndoGroup()

app.beginUndoGroup(undoString)
endSuppressDialogs(). Voir la section « Méthode
Description
Marque le début d’un groupe d’annulation qui permet à un script de regrouper de façon logique toutes ses actions sous la forme d’une seule action pouvant être annulée (via les options de menu Edition > Annuler/ Rétablir). Pour marquer la fin du groupe, utilisez la méthode
endUndoGroup(). (Voir la section « Méthode
Application endUndoGroup() », page 22.)
Les paires
beginUndoGroup() et endUndoGroup() peuvent être imbriquées. Les groupes dans les groupes
deviennent partie intégrante du plus grand groupe et seront annulés correctement. Dans ce cas, les noms des groupes internes sont ignorés.
Paramètres
undoString
Renvoi
Texte qui apparaîtra pour la commande Annuler dans le menu Edition (c’est-à-dire « Annuler <undoString> »).
Aucun.

Attribut Application buildName

app.buildName
Description
Nom de la compilation d’After Effects en cours d’exécution. Adobe utilise ce nom en interne à des fins d’essais et de dépannage.
Typ e
Chaîne ; lecture seule.
21
Référence JavaScript Objet Application
22

Attribut Application buildNumber

app.buildNumber
Description
Numéro de la compilation d’After Effects en cours d’exécution. Adobe utilise ce numéro en interne à des fins d’essais et de dépannage.
Typ e
Entier ; lecture seule.

Méthode Application cancelTask()

app.cancelTask(taskID)
Description
Supprime la tâche spécifiée de la file d’attente des tâches planifiées pour une exécution ultérieure.
Paramètres
taskID
Renvoi
Entier qui identifie la tâche, telle qu’elle est renvoyée par la méthode app.scheduleTask().
Aucun.

Méthode Application endSuppressDialogs()

app.endSuppressDialogs(alert)
Description
Met fin à la suppression des boîtes de dialogue d’erreur de script dans l’interface utilisateur. Les boîtes de dialogue d’erreur s’affichent par défaut. Appelez cette méthode uniquement si la méthode
beginSuppressDialogs() a été
appelée préalablement. Voir la section « Méthode Application beginSuppressDialogs() », page 21.
Paramètres
alert
Renvoi
Booléen ; lorsque ce paramètre est défini sur true, les erreurs survenues après l’appel de la méthode
beginSuppressDialogs() s’affichent dans une boîte de dialogue.
Aucun.

Méthode Application endUndoGroup()

app.endUndoGroup()
Description
Marque la fin d’un groupe d’annulation commencé par la méthode app.beginUndoGroup(). Vous pouvez utiliser cette méthode pour placer une fin de groupe d’annulation au milieu d’un script si vous souhaitez utiliser plusieurs groupes d’annulation pour un seul script.
Si vous n’utilisez qu’un seul groupe d’annulation pour un script donné, vous n’avez pas besoin d’utiliser cette méthode. En son absence à la fin d’un script, le système fermera le groupe d’annulation automatiquement.
22
Référence JavaScript Objet Application
23
Le fait d’appeler cette méthode sans avoir défini de méthode beginUndoGroup() génère une erreur.
Paramètres
Aucun.
Renvoi
Aucun.

Méthode Application endWatchFolder()

app.endWatchFolder()
Description
Met fin au mode Dossier de contrôle.
Paramètres
Aucun.
Renvoi
Aucun.
Voir aussi
« Méthode Application watchFolder() », page 30 « Méthode Application parseSwatchFile() », page 27 « Attribut Application isWatchFolder », page 24

Attribut Application exitAfterLaunchAndEval

app.exitAfterLaunchAndEval
Description
Cet attribut n’est utilisé que lors de l’exécution d’un script à partir d’une ligne de commande sous Windows. Lorsque l’application est lancée à partir de la ligne de commande, si l’indicateur de ligne de commande
-s est utilisé, l’application exécute un script (à partir d’un fichier ou d’une chaîne, respectivement).
Si cet attribut est défini sur true, After Effects quitte après l’exécution du script ; s’il est défini sur false, l’application reste ouverte.
Cet attribut n’a d’effet que si After Effects est exécuté à partir d’une ligne de commande Windows. Il n’a aucun effet sous Mac OS.
Typ e
Booléen ; lecture/écriture.
-r ou
23
Référence JavaScript Objet Application
24

Attribut Application exitCode

app.exitCode
Description
Code numérique d’état utilisé lors de l’exécution d’un script en externe (c’est-à-dire à partir d’une ligne de commande ou d’AppleScript).
Sous Windows, lorsque After Effects est lancé à partir de la ligne de commande (à l’aide de la commande
afterfx ou afterfx –m) et qu’un script est spécifié à l’aide de l’option –r ou –s, la valeur est renvoyée sur la
ligne de commande.
Sous Mac OS, la valeur est renvoyée en tant que résultat de la commande AppleScript DoScript pour
chaque script.
Sous Mac OS comme sous Windows, la valeur est définie sur 0 ( évaluation de script. En cas d’erreur lors de l’exécution du script, celui-ci peut définir cette valeur sur un nombre entier positif indiquant l’erreur qui s’est produite.
Typ e
Entier ; lecture/écriture.
EXIT_SUCCESS) au début de chaque
Exemple
app.exitCode = 2; //on quit, if value is 2, an error has occurred

Attribut Application isRenderEngine

app.isRenderEngine
Description
Cet attribut a la valeur true si l’application After Effects est exécutée en tant que moteur de rendu.
Typ e
Booléen ; lecture seule.

Attribut Application isWatchFolder

app.isWatchFolder
Description
Cet attribut a la valeur true si la boîte de dialogue Dossier de contrôle est affichée actuellement et si l’application est en train de contrôler un dossier pour le rendu.
Typ e
Booléen ; lecture seule.

Attribut Application language

app.language
Description
Langue dans laquelle After Effects est exécuté.
24
Référence JavaScript Objet Application
25
Typ e
Vale u r én u m ér é e Language ; lecture seule. L’une des suivantes :
Language.ENGLISH
Language.FRENCH
Language.GERMAN
Language.ITALIAN
Language.JAPANESE
Language.SPANISH
Exemple
var lang = app.language;
if (lang == Language.ENGLISH)
alert("After Effects is running in English.");
else if (lang == Language.FRENCH)
alert("After Effects is running in French.");
else
alert("After Effects is not running in English or French.");

Attribut Application memoryInUse

app.memoryInUse
Description
Nombre d’octets de mémoire actuellement utilisés par cette application.
Typ e
Nombre ; lecture seule.

Méthode Application newProject()

app.newProject()
Description
Crée un nouveau projet dans After Effects, en reproduisant la commande de menu Fichier > Créer > Nouveau projet.
Si le projet en cours a été modifié, l’utilisateur est invité à l’enregistrer. Si l’utilisateur ferme la boîte de dialogue Enregistrer sans enregistrer, le nouveau projet n’est pas créé et la méthode renvoie une valeur nulle. Utilisez
app.project.close(CloseOptions.DO_NOT_SAVE_CHANGES) pour fermer le projet en cours avant d’en
ouvrir un nouveau. Voir la section « Méthode Project close() », page 112.
Paramètres
Aucun.
Renvoi
Un nouvel objet Project ou une valeur nulle si aucun nouveau projet n’est créé.
Exemple
app.project.close(CloseOptions.DO_NOT_SAVE_CHANGES);
app.newProject();
25
Référence JavaScript Objet Application
26

Attribut Application onError

app.onError
Description
Nom d’une fonction de rappel qui est appelée lorsqu’une erreur se produit. En créant une fonction et en l’attribuant à cet attribut, il est possible de réagir aux erreurs systématiquement. Vous pouvez, par exemple, fermer et redémarrer l’application, et noter l’erreur dans un fichier journal si elle est survenue en cours de rendu. Voir la section « Méthode RenderQueue render() », page 154.
La chaîne d’erreur et une chaîne de gravité sont transmises à la fonction de rappel. Aucune valeur ne doit être renvoyée.
Typ e
Chaîne de nom de fonction ou valeur nulle si aucune fonction n’est attribuée ; lecture/écriture.
Exemple
function err(errString) {
alert(errString);
}
app.onError = err;

Méthode Application open()

app.open()
app.open(file)
Description
Ouvre un projet.
Paramètres
file
Renvoi
Un nouvel objet Project pour le projet spécifié ou une valeur nulle si l’utilisateur ferme la boîte de dialogue Ouvrir sans effectuer de sélection.
Exemple
var my_file = new File("../my_folder/my_test.aep");
if (my_file.exists){
new_project = app.open(my_file);
if (new_project){
alert(new_project.file.name);
}
}
Facultatif. Objet ExtendScript File pour le fichier de projet à ouvrir. S’il n’est pas fourni, la méthode invite l’utilisateur à sélectionner un fichier de projet.
26
Référence JavaScript Objet Application
27

Méthode Application parseSwatchFile()

app.parseSwatchFile(file)
Description
Charge des données d’échantillon de couleur à partir d’un fichier Adobe Swatch Exchange (ASE).
Paramètres
file
Renvoi
Spécification du fichier, qui est un objet ExtendScript File.
Les données de l’échantillon, au format suivant :
data.majorVersion
data.minorVersion
data.values
SwatchValue.type
SwatchValue.r
SwatchValue.g
SwatchValue.b
SwatchValue.c
SwatchValue.m
SwatchValue.y
SwatchValue.k
SwatchValue.L
SwatchValue.a
SwatchValue.b
SwatchValue.value
Numéro de version ASE.
Tableau de valeurs SwatchValue.
L’un des types suivants : RGB, CMYK, LAB, Gray
Lorsque type = "RGB", les valeurs de couleur comprises dans la plage [0.0..1.0].
0, 0, 0 correspond à la valeur Black.
Lorsque type = "CMYK", les valeurs de couleur comprises dans la plage [0.0..1.0].
0, 0, 0, 0 correspond à la valeur White.
Lorsque type = "LAB", les valeurs de couleur.
L est compris dans la plage [0.0..1.0]. a et b sont compris dans la plage [-128.0..+128.0]
0, 0, 0 correspond à la valeur Black.
Lorsque type = "Gray", value est compris dans la plage [0.0..1.0].
0.0 correspond à la valeur Black.

Méthode Application pauseWatchFolder()

app.pauseWatchFolder(pause)
Description
Interrompt temporairement ou reprend la recherche d’éléments de rendu dans le dossier de contrôle cible.
Paramètres
pause
Renvoi
True permet d’interrompre et false de reprendre.
Aucun.
27
Référence JavaScript Objet Application
28
Voir aussi
« Attribut Application isWatchFolder », page 24 « Méthode Application watchFolder() », page 30 « Méthode Application endWatchFolder() », page 23

Attribut Application project

app.project
Description
Projet en cours. Voir la section « Objet Project », page 110.
Typ e
Objet Project ; lecture seule.

Méthode Application purge()

app.purge(target)
Description
Purge de la mémoire les données inutilisées des types spécifiés. Reproduit les options de la commande Purger du menu Edition.
Paramètres
target
Type d’élément à purger de la mémoire ; valeur énumérée PurgeTarget, l’une des suivantes :
PurgeTarget.ALL_CACHES : purge toutes les données qu’After Effects a mises en mémoire
cache dans la mémoire physique.
PurgeTarget.UNDO_CACHES : purge toutes les données enregistrées dans le cache d’annulation.
PurgeTarget.SNAPSHOT_CACHES : purge toutes les données mises en cache en tant
qu’instantanés de composition/calque.
PurgeTarget.IMAGE_CACHES : purge toutes les données d’image enregistrées.
Renvoi
Aucun.

Méthode Application quit()

app.quit()
Description
Ferme l’application After Effects.
Paramètres
Aucun.
Renvoi
Aucun.
28
Référence JavaScript Objet Application
29

Attribut Application saveProjectOnCrash

app.saveProjectOnCrash
Description
Lorsque cet attribut est défini sur true (valeur par défaut), After Effects tente d’afficher une boîte de dialogue qui vous permet d’enregistrer le projet en cours lorsqu’une erreur provoquant la fermeture inopinée de l’application se produit. Lorsqu’il est défini sur false, cette boîte de dialogue disparaît et l’application se ferme sans que le projet ne soit enregistré.
Typ e
Booléen ; lecture/écriture.

Méthode Application scheduleTask()

app.scheduleTask(stringToExecute, delay, repeat)
Description
Planifie le JavaScript spécifié pour une exécution ultérieure.
Paramètres
stringToExecute
delay
repeat
Renvoi
Chaîne contenant le JavaScript à exécuter.
Durée d’attente (en millisecondes) avant l’exécution du JavaScript. Valeur à virgule flottante.
Lorsque ce paramètre est défini sur true, répète l’exéc ution du script, en respectant le délai spécifié entre chaque exécution. Lorsqu’il est défini sur false, le script n’est exécuté qu’une seule fois.
Nombre entier, identificateur unique de cette tâche, pouvant permettre d’annuler la tâche via la méthode
app.cancelTask().

Méthode Application setMemoryUsageLimits()

app.setMemoryUsageLimits(imageCachePercentage, maximumMemoryPercentage)
Description
Définit les limites d’utilisation de mémoire, telles que spécifiées dans les préférences Mémoire et cache. Pour les deux valeurs, si la mémoire vive installée est inférieure à une quantité donnée (n giga-octets), la valeur correspond à un pourcentage de la mémoire vive installée ; sinon, elle correspond à un pourcentage de n. La valeur de n est : 2 Go pour Windows 32 bits, 4 Go pour Windows 64 bits, 3,5 Go pour Mac OS.
Paramètres
imageCachePercentage
maximumMemoryPercentage
Renvoi
Aucun.
Valeur à virgule flottante ; pourcentage de mémoire assigné au cache image.
Valeur à virgule flottante ; pourcentage d’utilisation maximale de mémoire.
29
Référence JavaScript Objet Application
30

Méthode Application setSavePreferencesOnQuit()

app.setSavePreferencesOnQuit(doSave)
Description
Définit ou supprime l’indicateur qui détermine si les préférences doivent être enregistrées à la fermeture de l’application.
Paramètres
doSave
Renvoi
Lorsque ce paramètre est défini sur true, les préférences sont enregistrées à la fermeture de l’application. Lorsqu’il est défini sur false, elles ne sont pas enregistrées.
Aucun.

Attribut Application settings

app.settings
Description
Paramètres en cours. Voir la section « Objet Settings », page 164.
Typ e
Objet Settings ; lecture seule.

Attribut Application version

app.version
Description
Chaîne alphanumérique indiquant la version d’After Effects en cours d’exécution.
Typ e
Chaîne ; lecture seule.
Exemple
var ver = app.version;
alert("This machine is running version " + ver + " of After Effects.");

Méthode Application watchFolder()

app.watchFolder(folder_object_to_watch)
Description
Démarre un processus de dossier de contrôle (rendu en réseau) pointant vers un dossier spécifié.
Paramètres
folder_object_to_watch
Objet ExtendScript Folder que le dossier doit contrôler.
30
Loading...
+ 165 hidden pages