Antwort auf: Guten Tag, kann mir jemand sagen, ob InDesign aus der CS5 Suite mit UNC-Pfaden zurechtkommt?
InDesign CS5 kann sowohl UNC-Pfade (\\imageserver\images\bild.tiff) als auch mit Laufwerksbuchstaben (I:\images\bild.tiff) umgehen. Seit CS4 lässt es die Informationen auch unverändert (bis CS3 hat InDesign automatisch den UNC-Pfad gespeichert, beim Platzieren von Bildern aus einen verbundenen Netzlaufwerk (I:\) wurde automatisch der UNC-Pfad genommen (\\imageserver) und ins Dokument gespeichert).
Problem haben wir hier nur mit dem InDesign Server, weil dieser - wenn als Dienst gestartet - die Netzlaufwerksverknüpfungen nicht kenn. Er kann also mit i:\ nix anfangen und wirft deshalb "Missing Links"-Fehler.
Antwort auf: Zweite Frage: Welche Möglichkeiten gibt es bei bestehenden Dateien, die Einträge der Referenzpfade möglichst einfach (per Batch) für ganze Verzeichnisse/Unterverzeichnisse zu ändern?
Ich habe dafür ein Script, was in der aktuellen Datei alle Links anschaut und die Pfade anpasst (wie zuvor eingestellt):
// Rene Treuber
// axaio software GmbH
// SETUP
var pathReplace = new Array();
addReplacement( "I:\\", "\\\\Imageserver\\images\\");
addReplacement( "M:\\", "\\\\Media\\images\\");
// RUN
// hier könnte man auch über alle geöffneten Dokumente iterieren
processLinksInDoc( app.documents[0] ); // aktuelles Dokument
// function implementation
function processLinksInDoc( myDoc)
{
var theLinks = myDoc.links;
for( var i = theLinks.length-1; i >= 0 ; --i)
{
var oldPath = theLinks.filePath;
var newPath = oldPath;
for( var lcl = 0; lcl < pathReplace.length; ++lcl) {
newPath = newPath.replace( pathReplace[lcl]['from'], pathReplace[lcl]['to']);
}
try {
var theFile = File( newPath);
if(theFile.exists) {
theLinks.relink(theFile);
}
} catch (e) {
// relink of file does not success
}
}
}
function addReplacement( from , to )
{
localMount=new Array();
localMount['from'] = from;
localMount['to'] = to;
pathReplace.push(localMount);
}
// eof