2017-10-31 6 views
0

Ich versuche, ein einfaches Skript zu erstellen, das ein Bild (eps-Datei) in Indesign erneut verknüpft.Indesign-Skripting: Bild kann nicht neu verknüpft werden

Dies ist, was ich mit so weit habe kommen

//find item and get path 
var myItem = app.activeDocument.links.item("MyCurrentimage.eps"); 
var myItemPath = myItem.filePath; 
//define new image path 
var newPath = "P:\\images\\otherfolder\\newimage.eps"; 
//relink 
myItem.relink(myItemPath,newPath); 

Ich halte eine Nachricht immer sagen: „Können Sie die Link-Ressource aus der angegebenen URI nicht erstellen“. Irgendwelche Ideen? Vielen Dank!

+1

zu arbeiten Warum 'newPath' im Pfad doppelte Schrägstriche haben? – jmargolisvt

+0

Ich habe sowohl Double als auch Single ausprobiert, aber es macht keinen großen Unterschied. Ich bekomme immer noch den seltsamen Fehler. –

Antwort

0

Dies ist wirklich nur eine Vermutung, aber vielleicht sieht Ihre newPath als nur eine Zeichenfolge, kein URI, so dass Sie ein tatsächliches URL-Objekt übergeben müssen.

var newPath = new URL("P:\images\otherfolder\newimage.eps"); 
+0

Danke dafür. Leider bekomme ich jetzt einen anderen Fehler, der besagt, dass "URL keinen Konstruktor hat" –

+0

Vielleicht ist es eine 'neue URI', die es will? Das ist keine Sache, aber vielleicht ist es in InDesign? – jmargolisvt

1

Ich habe es endlich unter Verwendung relink mit new File()

//target item 
var itemIwantToReplace = app.activeDocument.links.item("MyCurrentimage.eps"); 
//relink 
itemIwantToReplace.relink(new File("P:\\Images\\myNewImage.eps")); 
Verwandte Themen