Question

Pour un projet j'ai besoin d'automatiser la création de cartes de visite. Maintenant, ils ont un fichier InDesign pour chaque modèle de carte de visite. Ils insèrent les informations de alle personnes dans le fichier indesign, puis générer un pdf de celui-ci.

, en entrant les informations des clients dans une application web est pas de problème, mais comment vais-je générer un pdf et comment vais-je modifier le fichier indesign lors de l'exécution?

Je pense que la modification du fichier indesign ne sera pas possible par programmation?

Puis-je générer un pdf à partir du indesign avec un modèle de carte en elle. Lors de l'exécution, je copiais la carte dans le pdf x nombre de fois. Ensuite, je aurais besoin d'injecter l'information des personnes (nom, adresse, ...)?

Qu'est-ce qui est possible ici?

La finale pdf est utilisé par une machine qui crée automatiquement les cartes de visite, les coupes, ...

Était-ce utile?

La solution

Vous pouvez automatiser quoi que ce soit à peu près en utilisant le support de script intégré dans InDesign. Dans l'interface graphique InDesign, vous pouvez attribuer des étiquettes de script à divers éléments, tels que les cadres de texte, dans votre document InDesign. Si, par exemple, souhaitez remplacer un texte dans un cadre de texte que vous pouvez appliquer quelque chose comme ça en Javascript (CS4 et ci-dessous, voir la note ci-dessous):

var document = app.open(File("path to your InDesign file"), false);
var textFrame = document.pageItems.item("your script label");
var story = textFrame.parentStory;
story.contents = "your new content"

Pour créer un fichier PDF que vous faites quelque chose comme ceci:

var pdfFile = new File("path to your pdf");
document.exportFile(ExportFormat.PDF_TYPE, pdfFile);

Ce fut là que quelques exemples de ce que vous pouvez faire, j'espère que ce peu utile. Si vous ne savez pas comment installer et exécuter des scripts dans InDesign, ce billet de blog explique le processus. Vous pouvez trouver un bon script de référence en ligne . Si je comprends bien que vous souhaitez exécuter vos scripts comme un processus de traitement par lots. Si tel est le cas, je vous recommande de jeter un oeil à InDesign Server. Il est essentiellement la version de bureau d'InDesign, mais sans l'interface graphique et une interface simple service Web. Il fonctionne également en tant que service Windows (ou l'équivalent sur d'autres plates-formes).

NOTE: A partir de CS5, vous ne pouvez plus identifier un cadre de texte par son étiquette de script, comme indiqué ci-dessus. Il y a une discussion à ce sujet ici . La meilleure alternative est d'utiliser itemByName (nom) au lieu de l'article, avec le nom étant le nom de la palette des calques. Cela peut être modifié dans l'interface graphique en faisant une double-cliquez vraiment lent sur l'élément dans la palette des calques. Ou, cette solution de contournement définit le nom de chaque cadre de texte égale à son étiquette de script. Ensuite, tout ce que vous devez faire pour modifier le contenu du cadre texte est la suivante:

document.textFrames.itemByName("shmullus").contents = "The Doctor";
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top