J'utilise la méthode myFile.execute()
pour ouvrir un document InDesign programme (dans ce cas, il est un document vierge avec des styles qui lui sont appliqués).
Script InDesign CS5: l'ouverture d'un document ne répond pas et ne génère pas d'erreur?
Le document est parfois ouvert, et à d'autres moments, il est pas ... Il semble que le script n'a pas assez de temps pour ouvrir le fichier avant qu'il ne soit fait.
Ce me est apparu parce que lors de tests avec
alert(template.name)
il
ne afficher le nom de fichier que je cherche, et le script ne
pas une erreur est générée lors de l'application
File(template).execute()
(la variable
template
est déjà un
File
objet, mais simplement
template.execute()
ne fonctionne pas non plus).
Voici le code correspondant:
function openStylesTemplate()
{
var templateFolder = getScriptFolder(); // with the function below
var fileArray = templateFolder.getFiles("*.indd"); // an array of all InDesign documents in this script's same folder
try
{
var template = fileArray[0]; // the ONLY InDesign document in the folder
File(template).execute(); // open the InDesign template document
}
catch(e)
{
alert("Error: " + e.message + "\n\n" +
"Make sure the InDesign styles document is in the same folder as this script,\n" +
"and that it is the ONLY InDesign document in this folder, and try again.\n\n" +
"This script is in this folder: " + templateFolder + ".");
exit();
}
} // end of function openStylesTemplate
Ainsi, le script pourrait ne pas avoir assez de temps pour charger le document? Si oui, devrais-je créer une minuterie avant que cette fonction ne soit appelée? Ou existe-t-il un meilleur moyen d'ouvrir un document InDesign par programme?
Ah ok, donc il n'y a pas d'erreurs, je suis juste en utilisant la mauvaise méthode! Merci d'avoir clarifié la différence entre ces méthodes. –