[INDESIGN] Besoin de votre aide pour un script SVP

Résolu
cs_alban56 Messages postés 8 Date d'inscription vendredi 9 janvier 2009 Statut Membre Dernière intervention 23 janvier 2009 - 9 janv. 2009 à 09:48
LoicAigon Messages postés 12 Date d'inscription lundi 15 décembre 2008 Statut Membre Dernière intervention 23 octobre 2009 - 24 janv. 2009 à 00:03
Bonjour à tous,

je me permet de poster une question aux spécialistes du forum car j'ai grand besoin de votre aide. Afin d'automatiser une tâche récurente sur InDesign, je cherche désespérément un script me permettant de faire les opérations suivantes :

- Tout sélectionner (ctrl + A)
- Vectoriser (ctrl + shift + O)
- Exporter (ctrl + E)
- réduire le nom du fichier (passer de 000000.00.X-XXXXXX à 000000.00)
- Fermer le document InDesign sans l'enregistrer

Je n'y connais stictement rien en quelconque programmation et mes tentatives furent vaines à chaque fois que j'ai essayer de bidouiller quelque chose  Je remerci d'avance toutes celles et ceux qui seront en mesure de m'aider dans ma quête

18 réponses

LoicAigon Messages postés 12 Date d'inscription lundi 15 décembre 2008 Statut Membre Dernière intervention 23 octobre 2009
23 janv. 2009 à 15:51
var myRegExp = new RegExp ("\..-.*.indd");
Là ça devrait marcher pour tts les combinaisons de type .X-X*.indd
Par contre j'ai pas encore trouvé pour .X*-X*.indd
En tout cas ca devrait dejà répondre à 99% de tes attentes.
Loic
3
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
9 janv. 2009 à 10:27
Salut
Je ne connais pas ce logiciel, mais en général, ils s'appuient sur du VBA.
Est-ce que tu as la possibilité d'enregistrer des macros ?
Si oui, enregistre une macro pendant que tu fais manuellement chacune des opérations.
En regardant le code généré dans la macro, tu sauras quoi mettre dans ton programme.
Pour la partie nom de fichier, suffit de regarder l'aide des fonctions Mid, Right, Left, Instr, Replace et consor

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
cs_alban56 Messages postés 8 Date d'inscription vendredi 9 janvier 2009 Statut Membre Dernière intervention 23 janvier 2009
9 janv. 2009 à 10:47
merci pour ta réponse.

Malheureusement, InDesign n'est pas comme Photoshop ou Illustrator. Pour ces 2 logiciels, il suffit de mettre en route une sorte d'enregistreur qui converti en script chacune des opérations que l'on exécute (Est-ce ça des "macros" ?).

Pour InDesign CS3 (j'avais oublié de préciser), il est possible de faire des scripts en VBscript, Java et XHTML je crois.
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
9 janv. 2009 à 19:13
Bah je sais pas, tu viens poser des questions sur de la prog en VB6 : En quoi programmes-tu ?
Si cela touche des logiciels pro, le mieux serait de regarder sur le site du concepteur et dans la doc de l'application.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
LoicAigon Messages postés 12 Date d'inscription lundi 15 décembre 2008 Statut Membre Dernière intervention 23 octobre 2009
23 janv. 2009 à 00:45
Ta suite d'actions est tout à fait scriptables y compris en VB.
Mais je ne m'y connais qu'en Javascript pour automatiser Indesign.
Si ca te va, je peux te filer un coup de main.
Loic
0
cs_alban56 Messages postés 8 Date d'inscription vendredi 9 janvier 2009 Statut Membre Dernière intervention 23 janvier 2009
23 janv. 2009 à 08:26
Je te remercie pour cette proposition qui m'aiderai grandement ! Je suis preneur de ton aide avec grand plaisir. Par contre, je n'y connais rien de rien en language informatique...
0
LoicAigon Messages postés 12 Date d'inscription lundi 15 décembre 2008 Statut Membre Dernière intervention 23 octobre 2009
23 janv. 2009 à 09:18
- Tout sélectionner (ctrl + A)
- Vectoriser (ctrl + shift + O)
- Exporter (ctrl + E)
- réduire le nom du fichier (passer de 000000.00.X-XXXXXX à 000000.00)
- Fermer le document InDesign sans l'enregistrer

Il ya quand même un truc ou deux que je voudrais éclaircir avant tout.

Visiblement, tu veux tout vectoriser (Pb de polices qui ne s'exporte pas ?). Ce n'est pas très conseillé en général car les PDFs qui en résultent sont plus lourds. Pourquoi penses tu avoir besoin de tout vectoriser ?
En plus, un ctrl A n'est pas forcèment le plus évident (quid des objets verrouillés et autres calques masqués).

Exporter vers quel format ? PDF, JPG, XML ? Tu ne précises pas.

Réduire le nom de fichier mais sans l'enregistrer après ? Tu veux peut-être dire modifier le nom avant l'export ?

Une fois que tu auras éclairci ces quelques points, je serai en mesure d'écrire qqch.
Loic
0
cs_alban56 Messages postés 8 Date d'inscription vendredi 9 janvier 2009 Statut Membre Dernière intervention 23 janvier 2009
23 janv. 2009 à 09:31
Je te remercie encore de ton aide. Voici les éclaircissements demandés :

- Le poids n'est pas un problème. J'ai besoin de vectoriser afin de ne pas avoir de problème de polices chez l'imprimeur.

- Je ne travail pas avec les calques sur InDesign, et je n'ai quasiment jamais besoin de vérouiller d'objets. Donc ctrl+A reste approprié.

- J'ai besoin d'exporter au format EPS

- Pour le nom de fichier, voici un exemple. J'enregistre mon fichier InDesign sous la forme 123456.01.A-XXXXXXX.indd et je désire que le fichier EPS qui sera exporté ne garde pour nom que 123456.01.EPS

- Je ne veux pas que le fichier InDesign soit enregistré après l'export car je veux garder le fichier non vectorisé.

J'espère avoir bien répondu à toutes tes interrogations :)
0
LoicAigon Messages postés 12 Date d'inscription lundi 15 décembre 2008 Statut Membre Dernière intervention 23 octobre 2009
23 janv. 2009 à 12:21
Voici,
http://dl.free.fr/fpSkMT7P5

Il te faut le placer dans le dossier scripts d'Indesign.

Tu me diras si ca te va.
Par défaut, ca exporte l'EPS dans le dossier de l'indesign.
Loic
0
cs_alban56 Messages postés 8 Date d'inscription vendredi 9 janvier 2009 Statut Membre Dernière intervention 23 janvier 2009
23 janv. 2009 à 12:31
JE viens de l'essayer et apriori ça fonctionne super. Je te remercie énormément ! Sans vouloir abuser, je voudrais savoir si c'est possible que le script ferme le document InDesign (sans l'enregistrer) après l'export ?
0
LoicAigon Messages postés 12 Date d'inscription lundi 15 décembre 2008 Statut Membre Dernière intervention 23 octobre 2009
23 janv. 2009 à 12:33
rajoute la ligne suivante à la fin après myRec.remove();
doc.close(SaveOptions.NO);
0
LoicAigon Messages postés 12 Date d'inscription lundi 15 décembre 2008 Statut Membre Dernière intervention 23 octobre 2009
23 janv. 2009 à 12:37
Au fait, le script crée un preset d'aplatissement "tv".
Si les paramètres ne te satisfont pas, tu peux toujours les modifier via Indesign.
Ca n'affectera pas le fonctionnement du script.
Par contre si tu supprimes le preset et relance le script, il remettra les valeurs par défaut du script.
Juste pour info.
0
cs_alban56 Messages postés 8 Date d'inscription vendredi 9 janvier 2009 Statut Membre Dernière intervention 23 janvier 2009
23 janv. 2009 à 13:05
J'ai rajouté la ligne et ça fonctionne :)

Par contre je ne sais pas ce que c'est un "preset d'aplatissement "tv""...

Je viens de remarquer autre chose : le fichier EPS généré porte le nom 123456.01.A-XXXX.indd.eps Il n'est pas possible de lui demander de supprimer tous les carractères au delà de 123456.01 ?
0
LoicAigon Messages postés 12 Date d'inscription lundi 15 décembre 2008 Statut Membre Dernière intervention 23 octobre 2009
23 janv. 2009 à 14:10
C'est parce que j'ai été un peu trop rigide.
Mets à jour cette ligne :
var myRegExp = new RegExp ("\.[A-Z]*-[A-Z]*.indd");

Pour le preset, c'est ce qui définit les  conditions d'aplatissement des transparences. Seul moyen d'obtenir la vectorisation des caractères au momentd e l'export.
Loic
0
cs_alban56 Messages postés 8 Date d'inscription vendredi 9 janvier 2009 Statut Membre Dernière intervention 23 janvier 2009
23 janv. 2009 à 14:16
Désolé mais ça n'a rien changé de remplacer :
var myRegExp = new RegExp ("\.[A-Z]-[A-Z]{7}.indd");

Par :
var myRegExp = new RegExp ("\.[A-Z]*-[A-Z]*.indd");

Le nom du fichier EPS généré est toujours 123456.01.A-XXXX.indd.eps
0
LoicAigon Messages postés 12 Date d'inscription lundi 15 décembre 2008 Statut Membre Dernière intervention 23 octobre 2009
23 janv. 2009 à 14:56
Pourtant chez moi ca marche
Je comprends pas pourquoi ca marche pas chez toi.
Normalement si le fichier contient la chaine point + un caractère maj une ou plusieurs fois  + un tiret + un caractère maj une ou plusieurs fois+ ".indd", il devrait le remplacer par "" soit rien.
En tout cas chez moi l'export est bien renommé.
Envoie moi un de tes fichiers que j'essaye ici
Loic
0
cs_alban56 Messages postés 8 Date d'inscription vendredi 9 janvier 2009 Statut Membre Dernière intervention 23 janvier 2009
23 janv. 2009 à 16:01
Alors là chapeau bas monsieur ! Ca marche du tonnerre ton code. Je te remercie énormément pour ton aide précieuse qui va me faire gagner un max de temps à l'avenir.
0
LoicAigon Messages postés 12 Date d'inscription lundi 15 décembre 2008 Statut Membre Dernière intervention 23 octobre 2009
24 janv. 2009 à 00:03
Y avait encore un truc qui me chagrinait. Du coup j'ai demandé de l'aide et voici ce qu'il en ressort.


remplace

var myRegExp = new RegExp ("\.[A-Z]-[A-Z]{7}.indd");
var myEPSFileName = docName.replace(myRegExp,"") + ".eps";


par :


var myEPSFileName = docName.replace(x.match (/\.[^.]+-.+\.indd/),".eps");

celà sera plus souple encore.

Loic
0
Rejoignez-nous