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

seregasss435

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

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

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

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

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

start_arboards_without_trouble.JPG
trouble.align_doscript_4.JPG
 
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;
}
 
Данный скрипт ничего не делает, кроме вызова экшена. Что в черном ящике - хз. Что на входе в файле - тоже хз
При отсутствии начальных условий, можно кантовать бесконечно
А вообще лично мое мнение - путь совсем неверный. Как надо делать я описал в соседней теме
 
  • Спасибо
Реакции: seregasss435
_MBK_ Цитата : "А вообще лично мое мнение - путь совсем неверный. Как надо делать я описал в соседней теме" - пожалуйста уточните куда смотреть.

По обращению к операции, нашел на форуму и изменил на такой код:
 
Код:
app.doScript('align_center','Align_set');
 
- - - не решило проблему

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

Во влажение два файла 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
Файлы не смотрел но осуждаю ибо версия старая, но в порядке постукивания по шине советую до и после doScript вставить redraw();
 
  • Спасибо
Реакции: Skvoznyak и seregasss435
Файлы не смотрел, полагаю что проблемные объекты попадают на несколько артбордов (?)
Да они перемещаються от 1-10 м.о. к 91-100 монтажной области с прогрессией и я заканомерность не просмотрел
 
Мега спасибо всем после применения redraw(); - стабильно работает
 
  • Спасибо
Реакции: Skvoznyak
Файлы не смотрел но осуждаю ибо версия старая, но в порядке постукивания по шине советую до и после doScript вставить redraw();
"Файлы не смотрел но осуждаю ибо версия старая" - вы говорите за версию Иллюстратора (Adobe Illustrator CC 2019 23.1.0.670 )?
 
У меня просто доступ только к CS6 да и то далеко
 
  • Спасибо
Реакции: seregasss435
Еще раз всем спасибо.
Ваш форум лучший.