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

seregasss435

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

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

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

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

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

start_arboards_without_trouble.JPG
trouble.align_doscript_4.JPG
 

seregasss435

Участник
Топикстартер
Сообщения
57
Реакции
1
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_

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

seregasss435

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

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

seregasss435

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

seregasss435

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

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

Во влажение два файла 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

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

seregasss435

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

Skvoznyak

12 лет на форуме
Сообщения
4 635
Реакции
1 842
Файлы не смотрел, полагаю что проблемные объекты попадают на несколько артбордов (?)
 
  • Спасибо
Реакции: seregasss435

_MBK_

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

seregasss435

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

seregasss435

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

seregasss435

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

_MBK_

Пикирующий бомбардировщик
12 лет на форуме
Сообщения
28 495
Реакции
9 392
У меня просто доступ только к CS6 да и то далеко
 
  • Спасибо
Реакции: seregasss435

seregasss435

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