[AI CC-CC2022] Загрузка скрипта c заданными параметрами Illustrator.

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

angelp

Участник
Топикстартер
Сообщения
50
Реакции
4
Есть ли какая-то возможность при выполнении скрипта выставлять параметры в самом Illustrator.
В частности интересует свойство: Scale strokes and effects.
T.e. независимо какое было это свойство в закрытом или уже открытом приложении, но чтобы при выполнении скрипта оно всегда было установлено как включеное.
 
У скрипта это свойство передается параметром в соответствующий метод
Для установки его в иллюстраторе, насколько я помню, нужно править AIprefs, вероятно, это можно даже из скрипта, правда, сработает такая правка только после перезагрузки иллюстратора
Но это не точно
 
  • Спасибо
Реакции: Skvoznyak
В спарвке "Scripting Reference" упоминается такое свойство приложения как "preferences", но на этом и все, ни примера ничего конкретного нет. И да нужно именно из скрипта, т.к. когда запускаю, часто забываю в приложении изменить. Приходится останавливать, менять и заново запускать. А когда рисую в илле, мне оно зачастую нужно чтобы было выключено. Отсюда и неудобство.
В принципе рестарт не страшен, можно даже импортировать настройки, но вот как их импортировать при старте скрипта тоже не придумал.
 
Параметр тоже не подходит, так вследствии убогости javscript под illustrator, нет возможности масштабировать и перемещать объекты с "Opacity mask", поэтому приходится в части скрипта такие манипуляции производить через executeMenuCommand, а туда параметр не передать.
Иногда даже action писать в теле скрипта, и запускать его из скрипта)
 
Последнее редактирование:
Кстати вот задал вопрос и сам нашел ответ в процессе обсуждения, т.к. я использую для этих целей созданный экшен в скрипте, то там и прописать этот параметр. Костыль, но проблему забывчивости решит.
 
упоминается такое свойство приложения как "preferences"
Это для долговременного хранения настроек скрипта а не иллюстратора. Насколько я понимаю, через это место к программным настройкам иллюстратора не достучаться.
т.к. я использую для этих целей созданный экшен в скрипте, то там и прописать этот параметр
Только так
 
Scale strokes and effects активируется в префах без перезапуска Иллюстратора скриптовой командой:
app.preferences.setBooleanPreference('scaleLineWeight', 1);

Соответственно обратно отключается
app.preferences.setBooleanPreference('scaleLineWeight', 0);

А такой короткий скрипт можно использовать, как переключатель состояний вкл/выкл:
JavaScript:
var currentState = app.preferences.getBooleanPreference('scaleLineWeight');
app.preferences.setBooleanPreference('scaleLineWeight', !currentState);
 
Последнее редактирование:
Ну вот, сразу видно, известный гуру скриптнига зашел на форум!
Welcome! :)
 
  • Спасибо
Реакции: creold
creold, спасибо огромное, то что нужно! А есть ресурс где посмотреть спиок параметров для app.preferences?
 
creold, спасибо огромное, то что нужно! А есть ресурс где посмотреть спиок параметров для app.preferences?
Небольшая вводная информация о префах в блоге. В конце статьи примеры, где частично выудить список префов.
 
  • Спасибо
Реакции: angelp, almastu и wizzle
То есть я правильно понимаю, у большинства параметров из aiPrefs есть соответствие к app.preferences?
1622204250671.png
 
Не факт, хотя названия ключей и могут попасться совпадающие. Вероятней найти ключи с задокументированным описанием в файле AIPreferenceKeys.h, который включен в комплект Adobe Illustrator SDK (Win / Mac). Примерно так энтузиасты и методом тыка, проверки ищут, какие ключи срабатывают в скриптинге.