[ID CC-CC2022] Выравнивание объектов на всех страницах одновременно

  • Автор темы Автор темы Alihan
  • Дата начала Дата начала

Alihan

Участник
Топикстартер
Сообщения
25
Реакции
0
Коллеги, где-то тут был скрипт для автоматического выравнивания всех объектов (например всех pdf-ов, лежащих на полосах) по центру страниц или по заданным координатам. Собственно у меня задача - выровнять все пдф-страницы, лежащие на полосах. Кроме них больше на полосах ничего нет. Вручную - долго, больше тысячи страниц.
Если можно, ссылку на готовый скрипт, собрать из кодов у меня не получилось, выдает ошибку. Спасибо!
 
Код:
var items = app.activeDocument.pageItems.everyItem().pdfs.everyItem().parent;
for (var i = 0; i < items.length; i++) {
    app.activeDocument.align(items[i], AlignOptions.HORIZONTAL_CENTERS, AlignDistributeBounds.MARGIN_BOUNDS);
    app.activeDocument.align(items[i], AlignOptions.VERTICAL_CENTERS, AlignDistributeBounds.MARGIN_BOUNDS);
}
 
  • Спасибо
Реакции: George и Alihan
Коллеги, где-то тут был скрипт для автоматического выравнивания всех объектов (например всех pdf-ов, лежащих на полосах) по центру страниц или по заданным координатам. Собственно у меня задача - выровнять все пдф-страницы, лежащие на полосах. Кроме них больше на полосах ничего нет. Вручную - долго, больше тысячи страниц.
Если можно, ссылку на готовый скрипт, собрать из кодов у меня не получилось, выдает ошибку. Спасибо!
Код:
var sourceDoc = app.activeDocument;
var pagesCount = sourceDoc.pages.length;
for(var i = 0; i < pagesCount; i++)
        {
            sourceDoc.pages[i].pageItems.everyItem().select();
            app.menuActions.item("Horizontal Page Align Centre").invoke();        //центрируем горизонтально на странице
            app.menuActions.item("Vertical Page Align Centre").invoke();        //центрируем вертикально на странице
        }
 
  • Спасибо
Реакции: Alihan
Спасибо огромное, но Как! Как этот скрипт собирается?? Подскажите, пожалуйста!!! С нуляяя!!
 
Спасибо огромное, но Как! Как этот скрипт собирается?? Подскажите, пожалуйста!!! С нуляяя!!
вы у кого спрашиваете?
пан @Oleg Butrin сделал буквально то, что вы просили - центрирует то, что есть pdf
мой вариант попроще и спорно-универсальнее - центрирует все скопом.
 
вы у кого спрашиваете?
пан @Oleg Butrin сделал буквально то, что вы просили - центрирует то, что есть pdf
мой вариант попроще и спорно-универсальнее - центрирует все скопом.
Куда вставлять это скрипт, я про это! Я совсем профан в скриптах.
 
Куда вставлять это скрипт, я про это! Я совсем профан в скриптах.
в Индизайне - Alt+Ctrl+F11 или Windows - Utilities - Scripts
правой кнопкой мышки на панельке - Reveal in explorer
тут создаете файл, называете как-то, расширение js или jsx
в него сохраняете строки из ответов выше.
Ну и запускаете
 
Куда вставлять это скрипт, я про это! Я совсем профан в скриптах.
ну или вот 2 в 1 - думаю разберетесь
сохранять куда-то суда...

C:\Users\USERNAME\AppData\Roaming\Adobe\InDesign\Version 7.0\en_GB\Scripts\Scripts Panel\

USERNAME - ваша учетка
Version 7.0 - версия индиза
 
Код:
var items = app.activeDocument.pages.everyItem().pageItems.everyItem().getElements();
for (var i = 0; i < items.length; i++) {
    if (items[i].hasOwnProperty('pdfs') && items[i].pdfs.length == 1) {
        app.activeDocument.align(items[i], AlignOptions.HORIZONTAL_CENTERS, AlignDistributeBounds.MARGIN_BOUNDS);
        app.activeDocument.align(items[i], AlignOptions.VERTICAL_CENTERS, AlignDistributeBounds.MARGIN_BOUNDS);
    }
}
 
  • Спасибо
Реакции: Alihan
Элементы у вас часом не сгруппированы?
 
Oleg Butrin,
Йессс! Заработало! Несколько раз перевставил ваш код и заработало!!! АААгромное спасибо!!!!
 
Коллеги, а реально ли, чтобы данный скрипт автоматически загружал pdf-ы В РЕЖИМЕ КАДРИРОВАНИЯ (ОГРАНИЧИТЕЛЬНОЙ РАМКИ), а не в режиме Мультимедиа? А то потом приходится вручную подгонять сотни фреймов из-за ненужных полей...