[ID CS4-CS6] добавить используемые цвета в палитру сватчей

bossrus

шибка умный, аднака
Топикстартер
12 лет на форуме
Сообщения
447
Реакции
74
в индизайне есть палитра сватчей:
swatches.jpg

и с помощью небольшого костыля туда можно добавлять используемые цвета, которых там нет:
Код:
var cAddUnnamedColors = app.menuActions.item("Add Unnamed Colours");
cAddUnnamedColors.invoke();

а сейчас, пока работы крайне мало, и мне скучно — я заинтересовался — а можно ли обойтись без использования инвока, учитывая, что пункты меню весьма сильно зависят от локализации и даже на разных английских "Add Unnamed Colours" звучит по разному? (да, можно по id, но там тоже вероятны слёты по версии)
вариант, который у меня сразу пришёл в голову — сделать именование цвета, у которого нет имени... но фиг.
на
Код:
var clrs = app.activeDocument.colors;
var lastColor = clrs[clrs.length-1];
lastColor.name = "name";
мне любезно сообщают, что
error.jpg

функции .add у swatches тоже нет.
как?
 

bossrus

шибка умный, аднака
Топикстартер
12 лет на форуме
Сообщения
447
Реакции
74
Свотчи добавляются через colors.add();
да. я дошёл до
Код:
var clrs = app.activeDocument.colors;
var clrOld = clrs[clrs.length-1];
var clrNew = clrs.add({name : "my_new_color", colorValue : clrOld.colorValue, model : ColorModel.PROCESS ,space : ColorSpace.CMYK });
clrOld.remove(clrNew);
и это таки решает проблему. и именуется цвет, и у покрашенного объекта появляется правильная привязка к сватчу.

можно закрывать тему :)