[ID CC-CC2022] Нужен скрипт для перелинковки eps-ов из текущей папки

  • Автор темы Автор темы Little_boar
  • Дата начала Дата начала
Если задача сплющить макет после усадки материала, то способ вполне оправдан.
Для экономии наносекунд можно написать батничек, который переименовывает линки и открывает в идизайне шаблон.

Вариантов масса. Батник -- один из них. Сугубое ИМХО -- такое лучше делать через индизовский скрипт (хотя бы потому, что на него можно повесить хот-кей).
 
  • Спасибо
Реакции: langry
2ТС, у меня ещё вопрос: зачем в именах линков номер заказа? Если нужно получить уникальный номер в спуске, совершенно ни к чему создавать для этого новый, уникальный линк, отличающийся от предыдущего только номером…
 
  • Спасибо
Реакции: Little_boar
новый, уникальный линк, отличающийся от предыдущего только номером…

Не понял вас. В линках новых eps-картинок новым является не только полное имя (так как лежит в другой папке и имеет в начале имени уникальный номер), но и сама начинка новая. Новый заказ -- пара новых картинок с новыми именами. Надо чтобы их автоматически подхватил ИнДиз.
 
Проще тупо именовать эту пару новых файлов по образцу оригинала и InDesign подхватит их сам. Зачем скрипт!?

Назвать их face.eps и back.eps в папке заказа — вопрос решён
 
Проще тупо именовать эту пару новых файлов по образцу оригинала и InDesign подхватит их сам. Зачем скрипт!?

Назвать их face.eps и back.eps в папке заказа — вопрос решён

Имя eps-файлов должно содержать уникальный номер заказа. Таковы особенности отдельно взятого производственного цикла.
 
ну копию сделать для спуска
 
JavaScript:
function epsRelink (doc) {
    var pfolder = Folder(doc.filePath);
    var front = 'front.eps';
    var back = 'back.eps';
    var flink = doc.links.itemByName(front);
    var blink = doc.links.itemByName(back);
    var frel = pfolder.getFiles( function (f) { if (f.constructor.name == 'File' && (/_f\.eps$/).test(f.name)) { return true; } } );
    var brel = pfolder.getFiles( function (f) { if (f.constructor.name == 'File' && (/_b\.eps$/).test(f.name)) { return true; } } );
    if (flink && flink.isValid && frel.length) {
        flink.relink(frel[0]);
    }
    if (blink && blink.isValid && brel.length) {
        blink.relink(brel[0]);
    }
}

if (app.documents.length && app.activeDocument.saved) {
    epsRelink(app.activeDocument);
}
 
Имя eps-файлов должно содержать уникальный номер заказа.
Для поиска? Не проще создать папку под номером заказа, а внутри хранить любые нужные имена?
Таковы особенности отдельно взятого производственного цикла.
Если система усложняет работу, её надо менять. Кому, как не тебе!?