[AI CC-CC2021] Скрипт для Иллюстратора по выполнению Action выравнивания по центру активной монтажной области из 100 м.о.

seregasss435

Участник
Топикстартер
Сообщения
142
Реакции
9
Приветствую

Я создаю скрипт для иллюстратора который будет на всех 100 монтажных областях
(возможно и другое количество, но ключевое это 100 м. о. и от другого количества могу отказаться)
производить оброботку ссылаясь на Action (Операции) по выравниванию по центру активной монтажной области.
При выполнении даного скрипта обработка происходит но большая часть иллюстраций (на каждой м. о. один векторный объект) перемещаеться в низ,
а некоторые объекты и вовсе групируються.

Если данный код использовать но не подключать операцию по выравниваню, то смещений не будет, все объекты на местах остаються как надо, и в конце активной становиться последняя
100-я монтажная область со снятым выделением с объекта на этой м.о., как и в принципе должно быть.

Во вложении два screenshot -а окна Иллюстратора и прикладываю соответствующий код.

Буду признателен за помощь. Почему такое происходит и как исправить?

start_arboards_without_trouble.JPG
trouble.align_doscript_4.JPG
 

seregasss435

Участник
Топикстартер
Сообщения
142
Реакции
9
JavaScript:
#target illustrator

// объявление перерменной doc :
var doc = app.activeDocument;



// цикл который обрабатывает все монтажные области согласно тела цикла ( активирование монтажной области: doc.artboards.setActiveArtboardIndex(i);
// выделение объектов на монтажной области: doc.selectObjectsOnActiveArtboard();):

var countingartboars=app.activeDocument.artboards.length

for( i=0; i <countingartboars; i++)
{
doc.artboards.setActiveArtboardIndex(i);
doc.selectObjectsOnActiveArtboard();

// Start action in illustrator запуск экшена в иллюстраторе:

doScript('align_center','Align_set');

// Deselect selection Снимает выделение:

app.activeDocument.selection=null;
}
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 333
Реакции
10 881
Данный скрипт ничего не делает, кроме вызова экшена. Что в черном ящике - хз. Что на входе в файле - тоже хз
При отсутствии начальных условий, можно кантовать бесконечно
А вообще лично мое мнение - путь совсем неверный. Как надо делать я описал в соседней теме
 
  • Спасибо
Реакции: seregasss435

seregasss435

Участник
Топикстартер
Сообщения
142
Реакции
9
_MBK_ Цитата : "А вообще лично мое мнение - путь совсем неверный. Как надо делать я описал в соседней теме" - пожалуйста уточните куда смотреть.

По обращению к операции, нашел на форуму и изменил на такой код:
 

seregasss435

Участник
Топикстартер
Сообщения
142
Реакции
9
Код:
app.doScript('align_center','Align_set');
 

seregasss435

Участник
Топикстартер
Сообщения
142
Реакции
9
- - - не решило проблему

Если что то неверно скажите, исправте.
Или есть информация которую необходимо изучить мне самостоятельно - скиньте пожалуйста линк на ветку форума буду изучать.

Во влажение два файла ai:

sunburst_bf_test_start.ai -начальный файл до обработки.
sunburst_bf_test_have_trouble.ai - состояние файла после обработки.

и файл операции выравнивания и скриншот палитры операций:
Align_set.aia
palitra_align.JPG

Профилактически поменял на более новую версию иллюстратор, теперь у меня Adobe Illustrator CC 2019 23.1.0.670

Проблема остаеться актуальной
 

seregasss435

Участник
Топикстартер
Сообщения
142
Реакции
9
 

seregasss435

Участник
Топикстартер
Сообщения
142
Реакции
9
Выше ссылка на файлы с которыми я работаю для скачивания
 

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
Файлы не смотрел, полагаю что проблемные объекты попадают на несколько артбордов (?)
 
  • Спасибо
Реакции: seregasss435

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 333
Реакции
10 881
Файлы не смотрел но осуждаю ибо версия старая, но в порядке постукивания по шине советую до и после doScript вставить redraw();
 
  • Спасибо
Реакции: Skvoznyak и seregasss435

seregasss435

Участник
Топикстартер
Сообщения
142
Реакции
9
Файлы не смотрел, полагаю что проблемные объекты попадают на несколько артбордов (?)
Да они перемещаються от 1-10 м.о. к 91-100 монтажной области с прогрессией и я заканомерность не просмотрел
 

seregasss435

Участник
Топикстартер
Сообщения
142
Реакции
9
Мега спасибо всем после применения redraw(); - стабильно работает
 
  • Спасибо
Реакции: Skvoznyak

seregasss435

Участник
Топикстартер
Сообщения
142
Реакции
9
Файлы не смотрел но осуждаю ибо версия старая, но в порядке постукивания по шине советую до и после doScript вставить redraw();
"Файлы не смотрел но осуждаю ибо версия старая" - вы говорите за версию Иллюстратора (Adobe Illustrator CC 2019 23.1.0.670 )?
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 333
Реакции
10 881
У меня просто доступ только к CS6 да и то далеко
 
  • Спасибо
Реакции: seregasss435

seregasss435

Участник
Топикстартер
Сообщения
142
Реакции
9
Еще раз всем спасибо.
Ваш форум лучший.