ADOBE InDesign CS6 Didacticiel de scripts [fr]

ADOBE® INDESIGN®CS6
DIDACTICIEL DE SCRIPTS
ADOBEINDESIGNCS6
©2012 Adobe Systems Incorporated. Tous droits réservés.
Statut de mise à jour du document
CS6 Inchangé Aucune garantie d'actualité du contenu.
Didacticiel de scripts Adobe®InDesign®CS6
Les informations contenues dans ce document 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.
Nous attirons votre attention sur le fait que les illustrations ou images que vous pouvez être amené à incorporer à vos projets peuvent être protégées par des droits d’auteur, auquel cas leur exploitation sans l’autorisation de l’auteur constituerait une violation de ces droits. Veillez à obtenir toutes les autorisations requises de la part des auteurs.
Toutes les références à des noms de société dans les modèles cités en exemple sont indiquées uniquement à des fins de démonstration et ne se réfèrent à aucune organisation existante.
Adobe, le logoAdobe, CreativeSuite, InDesign, Illustrator et Photoshop sont des marques ou des marques déposées d’AdobeSystemsIncorporated aux Etats-Unis et/ou 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. Apple et MacOS sont des marques d’AppleComputer,Incorporated, déposées aux Etats-Unis et dans d’autres pays. Toutes les autres marques citées sont la propriété de leurs détenteurs respectifs.
Adobe Systems Incorporated, 345 Park Avenue, SanJose, Californie95110, Etats-Unis. Avertissement à l’attention des utilisateurs finaux du gouvernement des Etats-Unis. Le logiciel et la documentation sont des articles commerciaux, («Commercial Items »), selon la définition de ce terme dans l’article48C.F.R. §2.101, composés d’un logiciel commercial («Commercial Computer Software») et d’une documentation commerciale relative au logiciel («Commercial Computer Software Documentation»), selon la définition de ces termes dans l’article48C.F.R. §12.212 ou 48C.F.R. §227.7202, selon le cas. Conformément aux articles 48C.F.R. §12.212 ou 48C.F.R. §§227.7202-1 à 227.7202-4, selon le cas, le logiciel commercial et la documentation commerciale relative au logiciel sont cédés sous licence aux utilisateurs du gouvernement des Etats-Unis (a)en tant qu’articles commerciaux uniquement et (b)avec les seuls droits conférés à tout autre utilisateur final tenu par les termes et conditions stipulésici. Droits non publiés réservés en vertu de la législation américaine sur les droits d’auteurs. Adobe Systems Incorporated, 345 Park Avenue, SanJose, CA95110-2704, Etats-Unis. Pour les utilisateurs finaux du gouvernement des Etats-Unis, Adobe s’engage à respecter toutes les lois sur l’égalité des chances, y compris, le cas échéant, les dispositions du décret-loi (Executive Order)11246, tel qu’amendé, la section402 de l’Acte d’assistance à la réhabilitation des vétérans du Vietnam (the Vietnam Era Veterans Readjustment Assistance Act) de1974 (38USC4212) et la section503 de l’Acte de réhabilitation (RehabilitationAct) de1973, tel qu’amendé, ainsi que les règlements de l’article41C.F.R., sections60-1 à 60-60, 60-250 et60-741. Les règlements et la clause d’action affirmative contenus dans la phrase précédente doivent être inclus comme référence.
Sommaire
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Prise en main . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Installation des scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Exécution d’un script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Utilisation du panneauScripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
A propos des langages de script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
MacOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Langage de script à utiliser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Utilisation des scripts de ce document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Votre premier script InDesign . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
AppleScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
VBScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Analyse du script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Scripts et modèle d’objet InDesign . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Terminologie des scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Commentaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Valeurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Opérateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Instructions conditionnelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Structures de contrôle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Fonctions et gestionnaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Présentation du modèle d’objet InDesign . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Consultation du modèle d’objet InDesign . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Mesures et positionnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Ajout de caractéristiques à «Hello World» . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
AppleScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
VBScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3
Sommaire 4
Construction d’un document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Configuration des unités de mesure et des marges des planchestypes . . . . . . . . . . . . . . . . . . . . . . . . 32
AppleScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
VBScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Ajout d’une grille de ligne de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
AppleScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
VBScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Ajout d’éléments de gabarit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
AppleScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
VBScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Ajout de blocs de texte types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
AppleScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
VBScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Remplacement des éléments de gabarit et ajout de texte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
AppleScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
VBScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Ajout et application d’un style de paragraphe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
AppleScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
VBScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Importation d’un fichier texte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
AppleScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
VBScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Importation d’une image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
AppleScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
VBScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Perfectionnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Didacticiel de scripts AdobeInDesignCS6

Introduction

Les scripts représentent la fonction la plus puissante d’Adobe®InDesign®. Aucune autre fonction n’est aussi rapide, facile et économique que le script.
Le présent document s’adresse à tous les utilisateursd’InDesign. Si vous n’avez jamais créé un script, ce document vous aidera à commencer. Si vous avez déjà créé des scripts pour d’autres applications, vous apprendrez à appliquer vos connaissances aux scriptsInDesign.
Ce document traite également de l’installation et de l’exécution d’un scriptInDesign, ainsi que des atouts et des limitations des scriptsInDesign. Vous trouverez des indications sur les logiciels dont vous avez besoin pour commencer à écrire vos propres scripts.
Une fois que vous aurez acquis les connaissances de base sur les scripts d’InDesign à l'aide de ce didacticiel, vous pourrez consulter le Le
Guide des scripts d’Adobe InDesign
tels que la mise en forme du texte, la recherche ou la modification de texte, l’association de scripts et d’éléments de menu, la création d’objets sur une page et l’exportation de documents.

Prise en main

Guide des scripts d’Adobe InDesign
contient des centaines de scripts pédagogiques portant sur des sujets
, qui explore les scripts de manière plus détaillée.
A l’aide des scripts, vous pouvez reproduire la plupart des opérations que vous exécutez par le biais de l’interface utilisateur. Vous pouvez dessiner des cadres, entrer du texte et le mettre en forme, importer des images et imprimer ou exporter les pages du document. Toute opération apportant une modification au document ou à son contenu peut être réalisée à l’aide d’un script. Les scripts vous permettent même d’exécuter certaines opérations qui ne sont pas réalisables avec l’interface utilisateur.
Les scripts permettent de créer des menus, d’ajouter des éléments de menu, de créer et d’afficher des boîtes de dialogue et des panneaux, mais également de répondre aux sélections de l’interface utilisateur. Ils peuvent lire et écrire des fichiers texte, analyser des donnéesXML et communiquer avec d’autres applications.
Les scripts permettent d’effectuer toutes sortes de tâches, des plus simples (telles que la définition d’un taquet de tabulation à l’emplacement du pointeur de texte) aux plus complexes, comme la définition d’un ensemble complet de fonctions (on doit la fonction d’exportationXHTML d’InDesign à un script). Vous pouvez commencer avec des scripts simples qui n’exécutent qu’une action, puis passer aux scripts qui automatisent le processus de publication toutentier.
Les tâches que vous ne pouvez pas exécuter à l’aide de scripts, telles que la définition d’un espace de travail ou d’un ensemble de raccourcis clavier, sont des tâches associées à l’interface utilisateur. En outre, les scripts ne permettent pas d’ajouter de nouveaux types d’objets à un documentInDesign ou d’ajouter une nouvelle fonctionnalité de base au programme, telle qu’un moteur de composition de texte. Pour ce type d’extension, vous devez utiliser le kitSDK (Software Developer’s Kit) d’InDesign, qui vous indique comment écrire des modules externes compilés à l’aide du langageC++.
Les scripts sont souvent associés dans les esprits à des tâches longues et répétitives, telles que la mise en page d’un annuaire téléphonique. Notez, toutefois, qu’ils permettent également d’exécuter d’autres tâches, telles que les suivantes:
X Automatisation d’une myriade de petites tâches fastidieuses quotidiennes
X Personnalisation d’InDesign pour l’adaptation aux habitudes de travail et mises en page de l’utilisateur
X Réalisation d’effets artistiques, difficiles voire impossibles à obtenir par d’autres moyens
5
Didacticiel de scripts AdobeInDesignCS6 Prise en main 6

Installation des scripts

L’installation d’un scriptInDesign est simple à réaliser: enregistrez le fichier de script dans le dossier ScriptsPanel du dossierScripts, dans votre dossierInDesign. (Si le dossierScripts n’existe pas, créez-le.)
Vous pouvez également placer le script dans le dossier ScriptsPanel de votre dossier de préférences, à l’emplacement suivant:
Windows® XP:
Windows® Vista:
Mac OS®: /Users/<username>/Library/Preferences
<username> correspond à votre nom d’utilisateur et <locale> désigne votre région et votre langue, par exemple, en_US.
Une fois dans le dossier, le script s’affiche dans le panneauScripts de l’applicationInDesign. Pour afficher le panneau, choisissez la commande Fenêtre> Utilitaires>Scripts.
Vous pouvez également placer des alias ou des raccourcis de scripts (ou de dossiers contenant des scripts) dans le dossier ScriptsPanel. Ils s’afficheront dans le panneauScripts.
Pour exécuter un script particulier au démarrage d’InDesign, placez ce dernier dans un dossier nommé «StartupScripts», sous le dossierScripts (si le dossierScripts n’existe pas, créez-le.)
C:\Documents and Settings\<username>\Application Data \Adobe\InDesign\Version 8.0\<locale>\Scripts
C:\Users\<username>\AppData\Roaming \Adobe\InDesign\Version 8.0\<locale>\Scripts
/Adobe InDesign/Version 8.0/<locale>/Scripts

Exécution d’un script

Pour exécuter un script, vous devez afficher le panneauScripts (choisissez la commande Fenêtre> Utilitaires>Scripts), puis cliquer deux fois sur le nom du script dans le panneauScripts. De nombreux scripts affichent des éléments d’interface utilisateur (boîtes de dialogue ou panneaux, parexemple), ainsi que des messages d’alerte, si nécessaire.
Utilisation du panneauScripts
Le panneauScripts d’InDesign représente le meilleur moyen d’exécuter la plupart des scriptsInDesign. Si ce panneau n’est pas visible, vous pouvez l’afficher en choisissant la commande Fenêtre> Utilitaires>Scripts.
Les scripts activés à partir du panneauScripts sont exécutés plus rapidement que ceux activés à partir du Finder (MacOS®) ou de l’Explorateur(Windows®).
Pour accélérer l’exécution des scripts, vous pouvez également désactiver la réactualisation de l’écran lors de l’exécution des scripts. Pour cela, désactivez l’option Activer la réactualisation dans le menu du panneauScripts. Pour afficher les opérations du script à mesure qu’elles s’exécutent, activez cette option.
Le panneauScripts peut exécuter des AppleScripts (fichiers avec l’extension compilés ou non, des JavaScripts (fichiers avec l’extension l’extension
Pour modifier un script affiché dans le panneauScripts, sélectionnez-le, puis choisissez la commande Modifier le script dans le menu du panneauScripts. Vous pouvez également maintenir la toucheOption (MacOS) ouAlt (Windows) enfoncée et cliquer deuxfois sur le nom du script. Le script s’ouvre dans l’éditeur défini pour son type de fichier.
.vbs) ou des programmes exécutables à partir du panneauScripts.
.spt, .asou .applescript)
.js ou.jsx), des VBScripts (fichiers avec
Didacticiel de scripts AdobeInDesignCS6 Prise en main 7
Pour ouvrir le dossier contenant un script affiché dans le panneauScripts, sélectionnez le script, puis choisissez la commande Faireapparaître dans le Finder (MacOS) ou Faireapparaître dans l’Explorateur (Windows). Vous pouvez également maintenir la toucheCommande (MacOS) ou les touchesCtrl+Maj (Windows) enfoncées et cliquer deuxfois sur le nom du script. Le dossier contenant le script s’ouvre dans le Finder (MacOS) ou l’Explorateur (Windows).
En règle générale, les scripts s’exécutent sous la forme d’une série d’opérations (actions), ce qui signifie que vous pouvez annuler les modifications apportées au document par le script en choisissant la commandeAnnuler dans le menuEdition. Vous pouvez ainsi dépanner un script, en revenant aux étapes précédentes pour chaque modification. Les scripts peuvent modifier le mode annulation et enregistrer toutes les opérations de script en une seule étape d’annulation. Ceci permet d’accélérer considérablement l’exécution des scripts. Pour plus de détails sur cette opération, consultez le Guide des scripts d’Adobe InDesign correspondant au langage de script de votre choix.
Pour ajouter un raccourci clavier à un script, choisissez la commande Edition> Raccourcisclavier, sélectionnez un ensemble de raccourcis modifiable dans le menuEnsemble, puis sélectionnez l’optionScripts dans le menuZone duproduit. Une liste de scripts apparaît dans le panneauScripts. Sélectionnez un script, puis affectez-lui un raccourci clavier comme vous le feriez pour n’importe quelle autre fonction d’InDesign.

A propos des langages de script

Le langage utilisé pour rédiger des scripts dépend du système de script de votre plate-forme de travail: AppleScript pourMacintosh, VBScript pourWindows ou JavaScript pour les deux plates-formes. Bien que les langages d’écriture de script diffèrent, leur fonctionnement avecInDesign est très similaire.
Les exemples de scripts contenus dans ce document sont donnés pour tous ces langages. La conversion d’un script d’un langage à un autre est un procédé assez simple.
JavaScript
InDesign prend en charge le langage JavaScript pour la création de scripts multiplate-formes sous MacOS etWindows. La prise en charge de JavaScript par InDesign repose sur l’implémentation de JavaScript pourAdobe appelée ExtendScript. L’interpréteur ExtendScript est conforme à la norme ECMA262 en vigueur pourJavaScript. Toutes les fonctions de langage JavaScript1.5 sont prises en charge. Adobe Illustrator®, Adobe Photoshop®, ainsi que d’autres produits AdobeCreativeSuite® utilisent également l’interpréteur ExtendScriptJavaScript.
Même si vous pouvez écrire des scripts dans d’autres versions de JavaScript, telles que Microsoft®JScript (Windows) ou JavaScriptOSA de LateNight Software (MacOS), les termes utilisés dans ces langages ne sont pas les mêmes que ceux utilisés dansExtendScript. Les exemplesExtendScript ne fonctionnent pas dans d’autres versionsJavaScript.
REMARQUE : les outils et fonctionsExtendScript sont utilisés dans plusieurs produitsAdobe. Cela a mené à la consolidation de toute la documentationExtendScript. Pour en savoir plus sur les outils JavaScript tels que le module d’interface utilisateur ScriptUI et ExtendScript Toolkit (environnement de développement JavaScript et inspecteur de modèles d’objet), reportez-vous au Guide des outils JavaScript.
Didacticiel de scripts AdobeInDesignCS6 Prise en main 8
Windows
Pour utiliser les scripts d’InDesign sous Windows, vous pouvez utiliser soit JavaScript, soit une version de Microsoft VisualBasic, telle queVBScript.
Les scripts d’apprentissage VisualBasic sont écrits en langageVBScript. Nous avons choisi le langageVBScript, car vous n’avez besoin d’aucun logiciel supplémentaire pour exécuter ou modifier des fichiers VBScript;vous pouvez les modifier avec n’importe quel éditeur de texte et les exécuter à l’aide du panneauScripts d’InDesign.
Les autres versions de VisualBasic incluent VisualBasic5 Control Creation Edition(CCE), VisualBasic6, VisualBasic.NET et VisualBasic2005 ExpressEdition. Les versions de VisualBasic antérieures à VisualBasic.NET fonctionnent bien avec les scriptsInDesign. La version VisualBasic.NET et les versions plus récentes ne fonctionnent pas aussibien, car elles n’utilisent pas le type de données largement présent dans les scriptsInDesign.
De nombreuses applications, parexemple MicrosoftWord, MicrosoftExcel, MicrosoftVisio ou AutoCAD contiennent VisualBasic for Applications(VBA). Bien qu’il ne soit pas intégré au programmeInDesign, vous pouvez utiliserVBA pour créer des scriptsInDesign.
Pour utiliser VBScript ou VisualBasic dans les scriptsInDesign sous Windows, vous devez installer InDesign depuis le compte d’un utilisateur bénéficiant des droits d’administrateur. Une fois l’installation terminée, n’importe quel utilisateur peut exécuter des scripts InDesign. Les utilisateurs bénéficiant des droits d’administrateur et d’utilisateur avec pouvoirs peuvent ajouter des scripts au panneauScripts d’InDesign.
Variant qui est
MacOS
Pour utiliser les scriptsInDesign sous MacOS, vous pouvez utiliser soit JavaScript, soitAppleScript. Pour écrire des AppleScripts, vous devez posséder AppleScript version1.6 ou supérieure, ainsi qu’un éditeur de scriptsAppleScript. AppleScript, fourni avec tous les systèmesApple®, peut être téléchargé gratuitement à partir du siteWebd’Apple. L’éditeur de scripts d’Apple est fourni avec MacOS; il est accessible à partir des menus:
MacOSX10.5 Applications > AppleScript > Script Editor
MacOSX10.6 Applications > Utilities > AppleScript Editor
Des éditeurs de script tiers, tels que Script Debugger (de Late Night Software, http://www.latenightsw.com), sont également disponibles.
Langage de script à utiliser
Si vous avez déjà écrit des scripts, utilisez le langage que vous connaissez. Si vous n’avez jamais écrit de scripts ou si vous devez utiliser vos scripts sur les versions MacOS et Windows d’InDesign, utilisez le langageJavaScript. Si vous devez communiquer avec des applications autres que des applicationsAdobe sur votre système, utilisez le langage approprié standard de la plate-forme (AppleScript pour MacOS ou VBScript pourWindows).
Nous ne pouvons pas vous fournir une documentation détaillée sur AppleScript, JavaScript ouVBScript. Vous aurez donc peut-être besoin de vous procurer la documentation spécifique à un ou plusieurs de ces langages de script.
REMARQUE : vous pouvez également utiliser la plupart des langages de programmation (parexemple, Python ouC#) qui peuvent se connecter au système d’automatisation standard de la plate-forme; cela ne fait toutefois pas partie du contenu du présent document.
Didacticiel de scripts AdobeInDesignCS6 Prise en main 9

Utilisation des scripts de ce document

Pour afficher ou modifier les scripts de ce document, ouvrez le fichier de script d’apprentissage correspondant (le nom de fichier figure devant chaque script) dans l’application d’édition de scripts de votre choix.
Pour exécuter un script, installez-le dans le dossier ScriptsPanel (voir la section « Installation des scripts » à
la page 6), puis procédez comme suit:
1. Choisissez la commande Fenêtre> Utilitaires>Scripts pour afficher le panneauScripts.
2. Pour exécuter le script, cliquez deux fois sur son nom dans le panneauScripts.
Pour enregistrer un script que vous avez modifié, enregistrez-le au format de fichier texte brut dans le dossier ScriptsPanel (voir la section «
AppleScript: .applescript
JavaScript: .jsx
VBScript : .vbs
REMARQUE : si vous entrez manuellement les exemplesJavaScript présentés dans ce document, veillez à respecter la casse indiquée. JavaScript est sensible à la casse, et les scripts ne fonctionneront pas s’ils ne respectent pas la casse indiquée. Les exemples AppleScript et VBScript ne sont pas sensibles à la casse. Il est toutefois conseillé d’utiliser les fichiers de script fournis avec ce didacticiel.
Installation des scripts » à la page 6) avec l’extension appropriée:
REMARQUE : si vous copiez et collez des scripts de ce document, soyez conscient que les sauts de ligne provenant de la mise en page du document peuvent entraîner des erreurs dans vos scripts. Ces erreurs pouvant être difficiles à repérer, il est recommandé d’utiliser les scripts fournis avec ce didacticiel.

Votre premier script InDesign

Vous allez maintenant créer un scriptInDesign pour générer un document, ajouter un bloc de texte et entrer du texte dans ce bloc. Ce script vous permet d’effectuer les opérations suivantes:
X Etablissement de la communication avecInDesign
X Création d’un document
X Création d’un bloc de texte sur une page spécifique
X Ajout de texte à un bloc de texte
AppleScript
Lancez l’application de l’éditeur de scripts (situé dans le dossier Applications du dossierAppleScript). Entrez le script suivant (ou ouvrez le script d’apprentissage
tell application "Adobe InDesign CS6" set myDocument to make document tell page 1 of myDocument set myTextFrame to make text frame set geometric bounds of myTextFrame to {"6p", "6p", "24p", "24p"} set contents of myTextFrame to "Hello World!" end tell end tell
HelloWorld.applescript):
Didacticiel de scripts AdobeInDesignCS6 Prise en main 10
Enregistrez le script au format de fichier texte avec l’extension.applescript dans le dossier ScriptsPanel (voir la section «
Installation des scripts » à la page 6). Pour exécuter le script, cliquez deux fois sur son nom
dans le panneauScripts ou cliquez sur Exécuter dans la fenêtre de l’éditeur de scripts.
JavaScript
Lancez l’utilitaire ExtendScript Toolkit (ou un éditeur de texte). Entrez le script suivant (ou ouvrez le script d’apprentissage
var myDocument = app.documents.add(); var myTextFrame = myDocument.pages.item(0).textFrames.add(); myTextFrame.geometricBounds = ["6p", "6p", "24p", "24p"]; myTextFrame.contents = "Hello World!";
HelloWorld.jsx):
Enregistrez le script au format de fichier texte brut avec l’extension.jsx dans le dossier ScriptsPanel (voir la section «
Installation des scripts » à la page 6). Pour exécuter le script, cliquez deux fois sur son nom dans
le panneauScripts ou sélectionnez la commandeInDesign dans le menu déroulant cible de l’application dans l’utilitaire ExtendScript Toolkit, puis cliquez sur le boutonExécuter.
VBScript
Lancez un éditeur de texte (parexemple, Bloc-notes), puis entrez le script suivant (ou ouvrez le script d’apprentissage
Set myInDesign = CreateObject("InDesign.Application") Set myDocument = myInDesign.Documents.Add Set myTextFrame = myDocument.Pages.Item(1).TextFrames.Add myTextFrame.GeometricBounds = Array("6p", "6p", "24p", "24p") myTextFrame.Contents = "Hello World!"
HelloWorld.vbs):
Enregistrez le script au format de fichier texte avec l’extension.vbs dans le dossier ScriptsPanel (voir la section «
Installation des scripts » à la page 6). Pour exécuter le script, cliquez deux fois sur le nom du script
dans le panneauScripts d’InDesign.
Analyse du script
Voici une analyse étape par étape des opérations réalisées par le script Hello World (dans chaque langage de script):
1. Etablissement de la communication avec l’objet d’applicationInDesign
AppleScript: tell application "Adobe InDesign CS6"
JavaScript: L’application est désignée par le nomapp.
VBScript : Set myInDesign = CreateObject("InDesign.Application")
2. Création d’un document et d’une référence au document
AppleScript: Set myDocument to make document
JavaScript: Var myDocument = app.documents.add();
VBScript : Set myDocument = myInDesign.Documents.Add
Didacticiel de scripts AdobeInDesignCS6 Scripts et modèle d’objet InDesign 11
3. Création d’un bloc de texte sur la première page et d’une référence au bloc de texte
AppleScript: tell page 1 of myDocument
set myTextFrame to make text frame
JavaScript: var myTextFrame = myDocument.pages.item(0).textFrames.add();
VBScript : Set myTextFrame = myDocument.Pages.Item(1).TextFrames.Add
4. Définition des délimitations géométriques (emplacement des bords supérieur, gauche, inférieur et
droit) du bloc de texte. Dans cette étape, le script utilise des remplacements d’unités de mesures (ppour les picas) pour garantir la taille exacte du bloc de texte, sans tenir compte des unités de mesure pardéfaut. Les emplacements sont présentés dans une liste ou un tableau de valeurs; chaque langage de script crée les tableaux de données d’une manière légèrement différente. Pour plus de détails sur les variables de tableau de données, voir la section
page 15.
AppleScript: set geometric bounds of myTextFrame to {"6p", "6p", "24p", "24p"}
JavaScript: myTextFrame.geometricBounds = ["6p", "6p", "24p", "24p"];
VBScript : myTextFrame.GeometricBounds = Array("6p", "6p", "24p", "24p")
5. Ajout de texte au bloc de texte en définissant la propriété de contenu sur une chaîne
« Variables de tableau de données » à la
AppleScript: set contents of myTextFrame to "Hello World!"
JavaScript: myTextFrame.contents = "Hello World!";
VBScript : myTextFrame.Contents = "Hello World!"

Scripts et modèle d’objet InDesign

Cette section traite de la terminologie des langages de script en général, et plus particulièrement de la création de scriptsInDesign.

Terminologie des scripts

Cette section traite des termes et concepts utilisés couramment dans la création de scripts.
Commentaires
Les commentaires permettent d’ajouter un descriptif à un script. Les commentaires sont ignorés pendant l’exécution d’un script (ils ne génèrent donc aucune erreur). Ils permettent de documenter les opérations d’un script (pour mémoire ou pour un autre développeur). Dans ce document, nous utilisons des commentaires pour les scripts d’apprentissage.
Pour inclure un commentaire:
X En AppleScript, insérez-- à gauche du commentaire ou placez le commentaire entre(* et*).
exemple:
Par
--this is a comment
(* and so is this *)
Didacticiel de scripts AdobeInDesignCS6 Scripts et modèle d’objet InDesign 12
X EnJavaScript, insérez// à gauche du commentaire ou placez le commentaire entre/* et*/.
exemple:
Par
// this is a comment /* and so is this */
X EnVBScript, tapezRem (pour «remarque») ou' (guillemet droit simple) à gauche du commentaire.
Saisissez le marqueur de commentaire au début d’une ligne pour mettre toute cette ligne en commentaire. Par exemple:
Rem this is a comment ' and so is this
Valeurs
Le corps d’un caractère, la position d’un bloc de texte sur une page et la couleur de contour d’un rectangle sont autant d’exemples devaleurs utilisées pour la création de scriptsInDesign. Les valeurs sont des données utilisées par un script pendant son exécution.
Le type d’une valeur définit quelle sorte de donnée elle contient. Le type de valeur du contenu d’un mot, parexemple, est une chaîne de texte. De même, le type de valeur de l’interligne d’un paragraphe est un nombre. En général, les valeurs utilisées dans un script sont des nombres ou du texte. Le tableau ci-après répertorie et décrit les types de valeurs les plus couramment utilisées pour la création de scriptsInDesign.
Type de valeur Nature Exemple
Boolean True ou False logique
Integer Nombres entiers (sans virgule).
True
14
Les entiers peuvent être positifs ou négatifs. En VBScript, vous pouvez utiliser des données de type long pour les entiers. En AppleScript, vous pouvez également utiliser indifféremment des données de type long ou fixe pour les nombres entiers et les nombres réels.
Double (VBScript), fixed or real
Nombre très précis pouvant être décimal.
13.9972
(AppleScript), number (JavaScript)
Didacticiel de scripts AdobeInDesignCS6 Scripts et modèle d’objet InDesign 13
Type de valeur Nature Exemple
Apple­Script
String Série de caractères de texte.
"I am a string"
Les chaînes de texte sont présentées entre guillemets anglais.
Array (VBScript, JavaScript)
Liste de valeurs (ces valeurs pouvant être de tout type).
AppleScript:
{"0p0", "0p0", "16p4", "20p6"}
or list (AppleScript)
VBScript:
Array("0p0", "0p0", "16p4", "20p6")
JavaScript:
["0p0", "0p0", "16p4", "20p6"]
Conversion de valeurs d’un type à un autre
Tous les langages de script pris en charge parInDesign permettent de convertir des valeurs variables d’un type à un autre. Parmi les conversions les plus communes, figure la conversion de nombres en chaînes de texte (ce qui permet d’entrer des nombres en toutes lettres ou de les afficher dans des boîtes de dialogue) ou de chaînes de texte en nombres (ce qui permet de définir un corps ou une position de page). Reportez-vous aux exemples suivants.
--To convert from a number to a string: set myNumber to 2 set myString to (myNumber as string)
--To convert from a string to a number: set myString to "2" set myNumber to (myString as integer)
--if your string contains a decimal value, use "as real" rather than "as integer"
JavaScript //To convert from a number to a string:
myNumber = 2; myString = myNumber + ""; //To convert from a string to an integer: myString = "2"; myNumber = parseInt(myString); //If your string contains a decimal value, use "parseFloat" rather than "parseInt": myNumber = parseFloat(myString); //You can also convert strings to numbers using the following: myNumber = +myString;
VBScript Rem To convert from a number to a string:
myNumber = 2 myString = cstr(myNumber) Rem To convert from a string to an integer: myString = "2" myNumber = cInt(myString) Rem If your string contains a decimal value, use "cDbl" rather than "cInt": myNumber = cDbl(myString)
Didacticiel de scripts AdobeInDesignCS6 Scripts et modèle d’objet InDesign 14
Variables
Une variable est le conteneur d’une valeur. Les variables portent ce nom car les valeurs qu’elles contiennent peuvent changer. Une variable peut contenir un nombre, une chaîne de texte ou une référence à un objetInDesign. Les variables portent un nom. Vous ferez donc référence à une variable par son nom. Pour placer une valeur dans une variable, vous devez l’assigner à cette variable.
Dans le premier exemple de script, plus haut, les variables éviter d’indiquer la spécification entière de l’objet (parexemple,
app.documents.item(0).pages.item(0).textFrames.item(0)), à chaque référence à l’objet.
myDocument etmyTextFrame sont utilisées pour
textframe1 of page1 of document1 ou
Dans tous les exemples de scripts et les scripts d’apprentissage accompagnantInDesign, les variables commencent par
my. Vous pouvez ainsi différencier facilement les variables créées dans un script des
termes du langage de script.
Affectation d’une valeur à une variable
L’affectation de valeurs ou de chaînes de texte à des variables est très simple, comme l’indique le tableau suivant:
Langage Exemples d’affectation d’une valeur à une variable
AppleScript
JavaScript
set myNumber to 10
set myString to "Hello, World!"
set myTextFrame to make text frame at page 1 of myDocument
var myNumber = 10;
var myString = "Hello, World!";
var myTextFrame = myDocument.pages.item(0).textFrames.add();
VBScript
myNumber = 10
myString = "Hello, World!"
Set myTextFrame = myDocument.Pages.Item(1).TextFrames.Add
REMARQUE : en JavaScript, toute variable non précédée devar est considérée par défaut comme globale, c’est-à-dire non liée à une fonction spécifique.
varn’est pas obligatoire, mais il est recommandé de
l’utiliser dans les scripts comprenant plusieurs fonctions. Dans les scripts AppleScript et VBScript, les variables sont locales à moins d’être spécifiquement définies comme globales. Cela signifie que les variables ne persistent pas en dehors de la fonction pour laquelle elles ont été créées.
Utilisez des noms descriptifs pour vos variables, tels que
c. Cela rend votre script plus facile à lire. Les noms plus longs n’affectent pas la vitesse d’exécution du
ou
PremièrePage ou LogoEntreprise, plutôt que x
script.
Les noms de variables doivent être composés d’un seul mot, mais vous pouvez utiliser les majuscules (pour écrire
myFirstPage, parexemple) ou les traits de soulignement (my_first_page) afin de les rendre
plus lisibles. Les noms de variables ne peuvent pas commencer par un chiffre, ni contenir des signes de ponctuation ou des guillemets de citation anglais.
Loading...
+ 32 hidden pages