Re: [AS] InDesign supprimer les pages paires mais pas toutes

Page principale
Supprimer ce message
Répondre à ce message
Auteur: Olivier Berquin
Date:  
À: La liste AppleScript Francophone
Sujet: Re: [AS] InDesign supprimer les pages paires mais pas toutes
Bonjour,

Voici un nouveau script (presque) complet… Il y a un cas que je n'ai pas
testé: lorsqu'on demande de supprimer *toutes* les pages du document.
Sinon, j'ai placé des commentaires pour la compréhension.

Belle journée.

O.



*tell* *application* "Adobe InDesign CC 2018"

*activate*

*if* (*count* *documents*) < 1 *then*

*display dialog* "Veuillez ouvrir un document" buttons "OK" default button
1 with icon *caution*

*return*

*end* *if*

*set* myDoc *to* *document* 1

-- récupère le nom de tous les gabarits (Master Spread)

*set* myListOfNames *to* name *of* *every* *master spread* *of* myDoc

-- Créé un dialogue avec la liste de tous les gabarits

*set* myChoice *to* *choose from list* myListOfNames ¬

with title "Supprimer les pages" with prompt ¬

"Choisir un ou plusieurs gabarits" OK button name ¬

"OK" cancel button name ¬

"Cancel" *with* multiple selections allowed


-- Compteur du nombre de pages à supprimer

*set* myCounter *to* 0

-- Est-ce que l'utilisateur a sélectionné un élément du dialogue?

*if* myChoice *is* *not* *false* *then*

*tell* myDoc

-- Supprime tous les labels des pages

*set* label *of* *every* *page* *to* ""

-- Donne le nombre de pages du document

*set* countPages *to* *count* *pages*

-- Je fais une boucle sur toutes les pages en commençant par la dernière

*repeat* *with* i *from* countPages *to* 1 *by* -1

-- si le gabarit est pas appliqué à la page, alors j'applique le label
"delete" à cette page

-- Le "try" est ici dans le cas où il n'y pas de pages dont le gabarit est
appliqué

*try*

*if* (name *of* applied master *of* *page* i) *is* *in* myChoice *then*

*set* label *of* *page* i *to* "delete"

*set* myCounter *to* myCounter + 1

*end* *if*

*end* *try*

*end* *repeat*

-- je supprime toutes les pages qui ont le label "delete"

*try*

*delete* (*every* *page* *whose* label *is* "delete")

*end* *try*

*end* *tell*

-- j'affiche un dialogue avec le nombre de page(s) supprimée(s)

*display dialog* (myCounter *as* *string*) & " page(s) supprimée(s)"

*end* *if*

*end* *tell*



Le 12 avril 2018 à 19:23, Olivier Berquin <olivier.berquin@???> a
écrit :

> Re-bonjour,
>
> Est-ce qu'il existe un Gabarit "A" dans le document qui se nomme "Gabarit"?
> Il faudrait peut-être créer une boîte de dialogue qui permette de
> sélectionner les pages qui ont un certain gabarit.
>
> O.
>
>

_______________________________________________
Applescript_fr mailing list
Applescript_fr@???
http://listes.patpro.net/mailman/listinfo/applescript_fr