J'ai un script qui trouve des noms d'image et les remplace par son image.Script InDesign, redimensionner les images lors de l'importation
Voici à quoi pourrait ressembler le texte de mon fichier InDesign.
@ blue_dress_xl.JPG @
Robe Bleu XL
Lorem ipsum ...
Le texte est en 3 colonnes, la largeur de chaque colonne est 40,667 mm. Lorsque j'utilise le script pour remplacer @ blue_dress_xl.JPG @ avec l'image, les images sont à 100%.
Je ne suis pas très forte dans JS, et j'ai essayé différentes choses, mais ça ne marche pas vraiment.
Y at-il un moyen de définir la largeur de l'image à "40,667 mm" quand il est importé?
main();
function main() {
var name, f, file, text,
arr = [];
if(app.documents.length != 0) {
var doc = app.activeDocument;
var folder = Folder.selectDialog("Choose a folder with images");
if (folder != null) {
app.findObjectPreferences = app.changeGrepPreferences = NothingEnum.NOTHING;
app.findGrepPreferences.findWhat = "@[email protected]";
f = doc.findGrep(true);
for (i = 0; i < f.length; i++) {
name = f[i].contents.replace(/@/g, "");
file = new File(folder.fsName + "/" + name);
if (file.exists) {
f[i].remove();
f[i].insertionPoints[0].place(file);
}
else {
arr.push("File doesn't exist '" + name + "'");
}
}
app.findObjectPreferences = app.changeGrepPreferences = NothingEnum.NOTHING;
arr.push("------------------------------------------");
text = arr.join("\r");
writeToFile(text);
}
}
else{
alert("Please open a document and try again.");
}
}
function writeToFile(text) {
var file = new File("~/Desktop/Place inline images.txt");
if (file.exists) {
file.open("e");
file.seek(0, 2);
}
else {
file.open("w");
}
file.write(text + "\r");
file.close();
}
Merci pour l'entrée, il est livré avec ce message d'erreur tho http://i.imgur.com/46RAPQB.png – LateChicken
Je suis désolé, une question typo . Reportez-vous à la modification de rect.place (fichier) et réexécutez le script. – Loic
Désolé de prendre si longtemps pour répondre, été très occupé. Il est proche de travailler, mais il ne correspond pas à l'image proportionnellement. J'ai donc essayé d'utiliser \t \t \t \t rect.fit (FitOptions.FILL_PROPORTIONALLY); Ce qui se rapproche de ce que je veux, mais si l'image est trop large, il suffit de la couper de chaque côté. Existe-t-il un moyen de dire que l'image doit avoir une largeur max/min de 40 667 mm, donc c'est seulement la hauteur qui change après quelle taille est l'image? – LateChicken