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

Page principale
Supprimer ce message
Répondre à ce message
Auteur: Manu
Date:  
À: Applescript_fr
Sujet: Re: [AS] InDesign supprimer les pages paires mais pas toutes
Merci Olivier

Oui avec du recul je pensais que c'était moins "usine à gaz" de supprimer des pages avec un gabarit précis
donc des documents bien préparés avec des pages comportant un gabarit InDesign qui pourront être supprimés

Plutôt que dire de supprimer les pages paires mais ne pas supprimer les pages qui comportent un "A-Gabarit"

Voilà ce pourquoi

Merci pour ce script amélioré
mais en le testant il génère une erreur
Au niveau du nom du gabarit "A-Gabarit"


tell application "Adobe InDesign CC 2018"
    activate
    get document 1
        --> document id 37
    set label of every page of document id 37 to ""
    count every page of document id 37
        --> 18
    get name of applied master of page 18 of document id 37
        --> error "Objet incorrect pour cette demande." number 30614
Résultat :
error "Erreur dans Adobe InDesign CC 2018 : Objet incorrect pour cette demande." number 30614





Le 2018-04-12 15:26, Olivier Berquin a écrit :
> Bonjour Manu,
>
> Je ne comprends pas ce que tu cherches à faire maintenant…
> Supprimer toutes les pages qui ont le gabarit A?
> Même si ce sont des pages paires / impaires?
> Peux-tu m'expliquer pourquoi?
>
> Je t'avais parlé d'un script amélioré… Le voici.
> Attention: c'est la version qui supprime les pages paires et qui n'ont pas
> le "A-Gabarit" appliqué.
>
> J'applique un "label" à toutes les pages qui doivent être supprimées (via
> une boucle et un test).
> Ensuite, je supprime toutes ces pages en une fois.
> Cette méthode est bien plus rapide que la précédente.
>
> Oli.
>
>
>
> *tell* *application* "Adobe InDesign CC 2018"
>
> *activate*
>
> *set* myDoc *to* *document* 1
>
> *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*
>
> -- pages impaires:
>
> -- set m to countPages - 1 + (countPages mod 2) -- max odd number <= n
>
> -- pages paires:
>
> *set* m *to* countPages - (countPages *mod* 2) -- nombre pair maximal <= n
>
> -- Je fais une boucle sur toutes les pages paires en commençant par la
> dernière
>
> *repeat* *with* i *from* m *to* 1 *by* -2
>
> -- si le gabarit "A-Gabarit" n'est pas appliqué, alors j'applique le label
> "delete" à cette page
>
> *if* (name *of* applied master *of* *page* i) ≠ "A-Gabarit" *then* *set*
> label *of* *page* i *to* "delete"
>
> *end* *repeat*
>
> -- je supprime toutes les pages qui ont le label "delete"
>
> *delete* (*every* *page* *whose* label *is* "delete")
>
>
> *end* *tell*
>
> *end* *tell*
>
>
>
>
> Le 12 avril 2018 à 15:33, Manu <manu@???> a écrit :
>
> > Bonjour
> >
> > C'est vrai que mon énoncé n'est pas très clair
> > c'est un code généré par FileMaker qui dit :
> > si c'est un document recto suppriment le verso
> > voilà pour la petite explication :)
> >
> > Sinon
> > Y a-t-il moyen d'avec AppleScript pour simplifier le script ci-dessous
> > de supprimer toutes les pages qui ont le nom d'un gabarit précis
> > exemple : toutes les pages qui ont le "A-Gabarit » sont supprimées ?
> >
> > Merci pour votre aide
> > Manu
> >
> >
> > Le 2018-04-11 10:50, Olivier Berquin a écrit :
> > > Bonjour Manu,
> > >
> > > Je vois déjà 2 soucis dans ton énoncé:
> > > 1-Une page recto est bien une page impaire, n'est-ce pas?
> > > Dans l'extrait de script que tu nous envoies, tu supprimes toutes les
> > pages
> > > paires…
> > >
> > > 2-Il faudrait veiller à utiliser des noms de variables parlants.
> > > Tu es d'accord que tester une variable comme ceci:
> > > if Blanc = "noir" then
> > > est quelque peu curieux.
> > >
> > > Ici, tu écris
> > > if Recto = "recto"…
> > > À un autre endroit, tu pourrais avoir if Recto = "verso"…
> > > Tu devrais avoir un nom de variable plus générique, comme "myPage" ou
> > > "cettePage".
> > >
> > > Pour ton problème, il suffit de faire un test dans ta boucle.
> > > Quelque chose comme
> > > repeat with i from m to 1 by -2
> > > if (name of applied master of page i) ≠ "Gabarit A" then delete page i
> > > end repeat
> > >
> > > Je t'enverrai une version améliorée plus tard (je n'ai malheureusement
> > pas
> > > le temps de développer en ce moment).
> > >
> > > Belle journée.
> > >
> > > O.
> > >
> > > Le 11 avril 2018 à 09:39, Manu <manu@???> a écrit :
> > >
> > > > Bonjour
> > > >
> > > > est-ce que quelqu'un pourrait m'aider sur une amélioration d’un script
> > > > utilisé dans InDesign ?
> > > >
> > > > j'utilise un script qui permet de supprimer les pages recto d'un
> > document
> > > > mais il y a des pages que j'aimerais conserver
> > > > peut-on conserver les pages avec le nom d'un gabarit précis ?
> > > > ou si ce n’est pas possible conservé des numéros de page ?
> > > >
> > > > voici le script que j'utilise aujourd'hui qui supprime les pages recto
> > du
> > > > document :
> > > >
> > > >
> > > >
> > > > Merci pour votre aide
> > > > bonne journée
> > > >
> > > > Manu
> > > >
> > > >
> > > > _______________________________________________
> > > > Applescript_fr mailing list
> > > > Applescript_fr@???
> > > > http://listes.patpro.net/mailman/listinfo/applescript_fr
> > > >
> > >
> > >
> > >
> > > --
> > > Mac OS 10.11.6
> > > Adobe CC 2017-2018
> > > _______________________________________________
> > > Applescript_fr mailing list
> > > Applescript_fr@???
> > > http://listes.patpro.net/mailman/listinfo/applescript_fr
> > >
> >
> > Restant à votre entière disposition pour tout renseignement.
> >
> > Cordialement
> > Emmanuel DEBONNET
> >
> >
> > Créidéo
> > 450 Route de Gruson
> > 59830 CYSOING
> > Tél. 03 20 34 54 54
> > Fax 03 20 34 54 56
> >
> >
> >
> >
> > _______________________________________________
> > Applescript_fr mailing list
> > Applescript_fr@???
> > http://listes.patpro.net/mailman/listinfo/applescript_fr
> >
>
>
>
> --
> Mac OS 10.11.6
> Adobe CC 2017-2018
> _______________________________________________
> Applescript_fr mailing list
> Applescript_fr@???
> http://listes.patpro.net/mailman/listinfo/applescript_fr
>


Restant à votre entière disposition pour tout renseignement.

Cordialement
Emmanuel DEBONNET


Créidéo
450 Route de Gruson
59830 CYSOING
Tél. 03 20 34 54 54
Fax 03 20 34 54 56




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