Vous avez mis en page un document InDesign en utilisant un certain nombre d'images, et vous voulez rééditer les liens de ces images vers de nouveaux fichiers dont les noms diffèrent des précédents suivant un motif prévisible. Ce script vous permettra d'utiliser la boîte de dialogue "Rechercher/Remplacer" d'InDesign pour rééditer ces liens.

Exemple 1 : votre mise en page a été réalisée avec des versions 640 pixels d'images libres de droits de Pixabay, lesquelles se terminent par "_640.jpg", et à présent vous vous êtes enfin décidé à vous inscrire sur ce site pour pouvoir télécharger toutes ces mêmes images en résolution d'origine, les fichiers obtenus ont les mêmes noms que les précédents sans le suffixe "_640". Pour remplacer les liens Il vous suffira

d'ouvrir la boîte de dialogue Rechercher/Remplacer > Texte et d'y saisir:
Rechercher : _640.jpg
Remplacer par : .jpg
Lancer le script,
Sélectionner le dossier où rechercher les liens,
Le script affiche alors les résultats de la recherche dans une fenêtre, dans plusieurs onglets si le nombre de résultats est important. Vous pouvez alors éventuellement décocher certains liens que vous ne voulez pas remplacer
Valider la fenêtre ("OK" ou "Remplacer tous les liens cochés" selon la version du script) > Les remplacements cochés sont effectués.

Pour effectuer la modification inverse, remplacer toutes les versions pleine résolution par les versions 640 px :

Rechercher/Remplacer > Texte
Rechercher : .jpg
Remplacer par : _640 .jpg
Lancer le script, etc.

find change links indd 002 fr

 

Exemple 2 : vous avez toujours des images de résolutions inférieures de Pixabay à remplacer par leurs versions pleine résolution, mais cette fois vous avez un mélange de versions 640 px, 1280 px et 1920 px (se terminant par "_640.jpg", " _1280.jpg" ou "_1920.jpg"). Cette fois il faudra utiliser :

Rechercher/Remplacer > GREP
Rechercher : _\d+\.jpg
Remplacer par : .jpg
Lancer le script, etc. (Démo)

D'où l'intérêt d'utiliser la boîte de dialogue existante Rechercher/Remplacer GREP qui vous permet d'utiliser l’icône Caractères spéciaux @ pour vous aider à construire votre expression régulière car tout le monde ne connaît pas par cœur la syntaxe GREP.

Pour faire la modification inverse en remettant des images de différentes résolutions inférieures à la place des images pleine résolution :

Rechercher/Remplacer > GREP
Rechercher : \.jpg
Remplacer par : _\d+ \.jpg
Lancer le script, etc.

Remarquez que dans ce dernier cas de figure "Remplacer par" est également une expression régulière, ce qui n'est pas normalement prévu dans la boîte de dialogue Rechercher/Remplacer GREP d'InDesign mais permettra au script de comprendre qu'il faut remplacer les images par d'autres pour lesquelles l'extension ".jpg" est précédée d'un underscore puis d'un ou plusieurs chiffres[1].

Le script pourrait alors trouver plusieurs fichiers correspondants, si par exemple votre image de départ se nomme chihuahua-2101644.jpg et que le dossier des images de remplacement contient à la fois chihuahua-2101644_640.jpg et chihuahua-2101644_1920.jpg : pour cette raison les résultats sont proposés dans des menus déroulants (en fait même pour une seule possibilité) dans la fenêtre des résultats, vous permettant de choisir avant de valider les remplacements.


Les options "Inclure les calques et objets verrouillés", "Inclure les calques et objets masqués" et "Inclure les gabarits" des onglets "Texte" et "GREP" sont prises en compte.
L'option "Respect de la casse" de l'onglet Texte est prise en compte également pour la recherche GREP.

 

J'ai mis en ligne deux versions, la version 009 utilise une fenêtre de type "dialogue" qui bloque l'application jusqu'à ce que vous annuliez ou acceptiez le remplacement de tous les liens cochés, la version 011 utilise une fenêtre de type "palette" et peut s'avérer moins compatible[2] avec les anciennes version CS mais vous permet, depuis les onglets des résultats, de sélectionner chaque lien en montrant où il se trouve et de décider éventuellement de le remplacer individuellement pour voir la différence, ou de remplacer tous les liens cochés en une seule fois.


[1] Dans l'exemple 2 j'ai utilisé la syntaxe la plus facile à comprendre pour les débutants en GREP mais on peut aussi faire

Rechercher : _\d+(\.jpg)
Remplacer par : $1

et la recherche inverse

Rechercher : (\.jpg)
Remplacer par : _\d+$1

"Remplacer par" est alors une expression régulière inhabituelle incluant un sous-résultat $1 d'une regex précédente — hybridation correctement interprétée par mon script. Le résultat entier $0 fonctionne également mais sera remplacé par son équivalent javascript $&


[2] Sous InDesign CS5 j'ai constaté que le contenu de la palette find-change-links_indd011.jsx disparaissait après l'affichage des détails par le bouton "?".

Vous n'avez pas la possibilité de poster un commentaire.
Seuls les membres enregistrés sont autorisés à commenter. Si vous êtes enregistré, veuillez vous connecter.

Commentaires   
# robinfredericf 31-03-2017 17:31
Le popup jce mediabox qui montre ma démo en gif animé semble fréquemment la recadrer suivant votre taille d'écran et celle de la fenêtre du navigateur, j'ai donc ajouté aussi un lien direct « (→ Démo) »
Remarque : la colorisation du texte a été rajoutée ultérieurement sur les captures d'écran dans la vidéo de démonstration pour mettre en évidence l'expression régulière et montrer à quoi elle correspond, mais vous ne verrez pas de texte ainsi colorisé dans l'interface d'InDesign quand vous utiliserez le script.
# Eddy 27-04-2017 13:07
Frédéric.
La popup est paramétrée en effet pour ne pas perdre de partie des images à l'affichage sur de petits écrans. C'est normal ! ;)

Suivez Scriptopedia.org

feed-image Suivez Scriptopedia.org

Scriptopedia sur facebook

À propos de Scriptopedia.org

Une idée de Loic Aigon mis en page par Eddy.VH se veut être une bibliothèque de scripts pour les produits Adobe orientés PAO. Vous y trouverez des scripts de type JavaScript pour Photoshop, Illustrator, inDesign et Acrobat et de type ATN ( Actions pour Photoshop ).