Выбор объекта по цвету заливки/обводки

  • Автор темы Автор темы firsikov
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

firsikov

Участник
Топикстартер
Сообщения
6
Реакции
7
Добрый день. Мучаюсь с JavaScript.

Задача выделить все объекты в люстре, у которых стоит оверпринт по белому. Модифицировал скрипт Select_Fill_Overprint.js… И нифига! Может кто подскажет, в чем затык? (зелёным выделил те изменения, которые я внёс)

Код:
[COLOR=#008000][B]var whiteColorCMYK = new CMYKColor(0,0,0,0);[/B][/COLOR]

for(i=0;i<activeDocument.pageItems.length;i++)
{
 obj=activeDocument.pageItems[i];
 if((obj.fillOverprint)&&(obj.editable)[COLOR=#008000][B]&&(obj.fillColor == whiteColorCMYK)[/B][/COLOR])
 {
  obj.selected=true;
 }
}
 
Ответ: Выбор объекта по цвету заливки/обводки

Код:
 if((obj.fillOverprint)&&(obj.editable)&&(obj.fillColor.cyan == whiteColorCMYK.cyan)&&(obj.fillColor.yellow == whiteColorCMYK.yellow)&&(obj.fillColor.magenta == whiteColorCMYK.magenta)&&(obj.fillColor.black == whiteColorCMYK.black))
 
Ответ: Выбор объекта по цвету заливки/обводки

Код:
 if((obj.fillOverprint)&&(obj.editable)&&(obj.fillColor.cyan == whiteColorCMYK.cyan)&&(obj.fillColor.yellow == whiteColorCMYK.yellow)&&(obj.fillColor.magenta == whiteColorCMYK.magenta)&&(obj.fillColor.black == whiteColorCMYK.black))

Спасибо. Но я пошел дальше. Зачем определять переменную белого цвета, если можно сравнивать с нолём.

Код:
if((obj.strokeOverprint)&&(obj.editable)&&(obj.strokeColor.black == 0)&&(obj.strokeColor.magenta == 0)&&(obj.strokeColor.yellow == 0)&&(obj.strokeColor.cyan == 0)) obj.selected=true;
 
Ответ: Выбор объекта по цвету заливки/обводки

В результате получилось 2 скрипта:
Возможно позже дойдут руки, и я добавлю проверку Grayscale и Spot

Пользуйтесь на здоровье!
 
Статус
Закрыто для дальнейших ответов.