[AI CC-CC2022] Где в документации описана команда executeMenuCommand()?

вот по ссылке все и написано

Бьюсь головой в перевод:

However, they also gave the ability to load and remove actions from .aia action files. Your .aia file just needs to be somewhere and app.loadAction() can read it right into the Actions panel. Same with app.unloadAction(setName, actionName) - where (thanks to qwertyfly) using (setName, "") an empty string argument for the action name will remove the entire set. And when you try to remove an action that does not exist, well, it throws an error - which is how you can check for making absolutely sure that an action set is completely removed.

И не могу понять в полной мере это что с помощью команды app.loadAction() можно загрузить с диска на панель действия экшен а потом необходимо его удалять. Если так то какой синтаксис, какой код должен быть? Разъясните пожалуйста
 
app.loadAction(файл.aia)
app.doScript(имя экшена, имя сета);
app.unloadAction(имя сета,"");
 
  • Спасибо
Реакции: seregasss435
Я код малек подправил:
Код:
app.loadAction('trans.aia');
app.doScript('trans.aia', 'Transform_for_script');
app.unloadAction('Transform_for_script','');

Сам экшен поместил:
C:\Program Files\Adobe\Adobe Illustrator CC 2019\Presets\ru_RU\Действия


И мне выдает ошибку:
trouble_action.JPG
 
там объект типа File должен быть

File("/путь/к/экшенсет.aia")
 
  • Спасибо
Реакции: seregasss435
Я уже догадался но все ровно ошибки лепит - буду продолжать его бить , может из-за кирилици вообщем буду пробовать
 
  • Спасибо
Реакции: seregasss435
В общем получилось мне прикрутить action с наружи к скрипту, но вот беда у моего скрипта задача увеличить монтажную область с 1000*1000 px на 6000*6000 px что в принципе я делаю с помощью кода по увеличению координат, вторая ключевая задача теперь увеличить в том же маштабировании и объекты которые находяться на этой же монтажной области так чтобы они трансформировались как група (Выделение-Трансформация- Маштабирование а не как Трансформировать каждый) но не групироровались - операцию записать конечно просто но на выходе получаеться скрипт с кодом и операциями и когда я вызываю пакетную обработку используя экшен для запуска скрипта а скрипт исполняет код по увеличению артборда и вызывает другой экшен (что внешний экшен подгружаеться что тот который есть в панели экшенов)который увеличивает объекты, то Иллюстратор подвисает . И это увеличение должно быть к батчу файлов ( порядком 100 епс). Если запускать отдельно пакетную обработку скриптом и экшеном для нужных файлов то я получаю желаемый результат - но 21 век на улице и хочеться не производить пакетную обработку в два этапа. Количество объектов на монтажной области может быть разное от 1 и более. Конечно идеальным будет применение единого кода. Или одного экшена, но на сколько я понял экшены на изменения артбоарда не пишуться ПОДСКАЖИТЕ ГУРУ КАК ВЫЙТИ ИЗ ЭТОЙ СИТУАЦИИ.
 
Ну как вариант, попробовать четко сформулировать задачу, выкинуть весь код и попробовать написать его заново, но уже без использования Actions и executeMenuCommand(), если это возможно.
:)
Без подгружения и вызова экшенов, а также команд меню, чисто теоретически, тормозов должно быть меньше.
 
Последнее редактирование:
  • Спасибо
Реакции: seregasss435
Задача следуючая :
- нужен скрипт для послующего применения в пакетной обработке
- необходимо увеличить монтажную область и все объекты (как группу но без объединения в групу ) на ней или объект пропорционально на 600 % . Для одного объекта это решаемо но если их больше , то что делать не знаю.

Код для монтажных областей:
Код:
var margin=2500;
var art = activeDocument.artboards[0].artboardRect;
activeDocument.artboards[0].artboardRect=[art[0]-margin,art[1]+margin,art[2]+margin,art[3]-margin];
 
Можно сгруппировать объекты на монтажной области, увеличить (можно и action, наверное использовать), а затем разгруппировать. В общем, пробовать надо разные варианты. Какой прокатит с точки зрения производительности, тот и использовать.
 
  • Спасибо
Реакции: seregasss435
Можно сгруппировать объекты на монтажной области, увеличить (можно и action, наверное использовать), а затем разгруппировать. В общем, пробовать надо разные варианты. Какой прокатит с точки зрения производительности, тот и использовать.
Вы знаете как написать экшен по изменению размера артбоарда, если да то как?
Я бы выделил бы все объекты на монтажной области.
А потом к этому объекту применил бы resize - только кода вот не знаю. Подскажите пожалуйста если знаете.
 
Шерстите этот форум (тема изменения размера артбоарда поднималась здесь не раз) и курите доки (про resize можно там узнать)!
 
Так у вас же уже есть код изменения артборда, вы его только что приводили.
А какая проблема экшном выделить обьекты на текущем артборде и отмасштабировать их без группировки?
 
Так у вас же уже есть код изменения артборда, вы его только что приводили.
А какая проблема экшном выделить обьекты на текущем артборде и отмасштабировать их без группировки?
Да код есть на артборд