[AI CS4-CS6] список обьектов

NatalieRedFox_333

Чего мне бояться? - подумала Красная Шапочка...)))
Топикстартер
Сообщения
2 089
Реакции
145
Здравствуйте господа!
подскажите как можно получить список обьектов...
допустим на слое есть 10 групп и две из них блокированы...
мне надо получить список такого вида
1 true
2 locked
3 true
4 locked
5 true

есть скрипт который выводит список фонтов а мне надо список залоченных групп )))) :)
чтоб просто было указано как выше....
 
Последнее редактирование:
В твоем списке не 10 обьектов а 5 и что в нем означает "true" и "locked" непонятно.
Вдобавок непонятен практический смысл такого списка - ведь из него непонятно какая именно группа заблокирована.
И на конец - а если группы реккурсивно вложены друг в друга?
 
  • Спасибо
Реакции: NatalieRedFox_333
В твоем списке не 10 обьектов а 5 и что в нем означает "true" и "locked" непонятно.
Вдобавок непонятен практический смысл такого списка - ведь из него непонятно какая именно группа заблокирована.
И на конец - а если группы реккурсивно вложены друг в друг
ну хорошо .. сделаем 25 )))
Layer_01
Layer_02
Layer_03
Layer_04
Layer_05
Layer_06
Layer_07
Layer_08
Layer_09
Layer_010
Layer_011
Layer_012
Layer_013
Layer_014
Layer_015
Layer_016
Layer_017
Layer_018
Layer_019
Layer_020
Layer_021
Layer_022
Layer_023
Layer_024
Layer_025
 
В твоем списке не 10 обьектов а 5 и что в нем означает "true" и "locked" непонятно.
Вдобавок непонятен практический смысл такого списка - ведь из него непонятно какая именно группа заблокирована.
И на конец - а если группы реккурсивно вложены друг в друга?
мне надо только верхний уровень...- мне надо получить список такого вида... допустим 8 заблокирован
Layer_01true
Layer_02true
Layer_03true
Layer_04true
Layer_05true
Layer_06true
Layer_07true
Layer_09true
Layer_010true
Layer_011true
 
Последнее редактирование:
В твоем списке не 10 обьектов а 5 и что в нем означает "true" и "locked" непонятно.
Вдобавок непонятен практический смысл такого списка
практический смысл... - мне надо в Excel отметить блокированные группы, а если у меня будет список я его смогу вставить рядом....
 
В твоем списке не 10 обьектов а 5 и что в нем означает "true" и "locked" непонятно.
"true" и "locked" - это просто пример.... главное список получить можно даже с пустой строкой как выше....
да...пожалуй надо уточнить один момент.... не группа а подслой.... то есть делаем Release to Layer, блокируем что не надо....
 
Последнее редактирование:
вот...главное чтоб список вытащить....
 

Вложения

  • Untitled.jpg
    Untitled.jpg
    113.8 КБ · Просм.: 153
Последнее редактирование:
JavaScript:
var d = app.activeDocument;
var txt="";
for (var i =0; i< d.groupItems.length; i++)
    if (d.groupItems[i].parent.typename == "Layer")
        {
         txt+=(d.groupItems[i].name+"\t"+d.groupItems[i].locked+"\r\n");
        }
alert(txt);
 
  • Спасибо
Реакции: NatalieRedFox_333
JavaScript:
var d = app.activeDocument;
var txt="";
for (var i =0; i< d.groupItems.length; i++)
    if (d.groupItems[i].parent.typename == "Layer")
        {
         txt+=(d.groupItems[i].name+"\t"+d.groupItems[i].locked+"\r\n");
        }
alert(txt);
почти получилось.... только мне его скопировать надо... и потом вставить в документ Excel
 

Вложения

  • Untitled.jpg
    Untitled.jpg
    150.1 КБ · Просм.: 132
А чего у тебя имена групп пустые?
 
  • Спасибо
Реакции: NatalieRedFox_333
В конце вместо алерта поставь prompt("отсюда можно копировать", txt) ;
 
  • Спасибо
Реакции: NatalieRedFox_333
Ты вопрос формулируй правильно и сэкономишь всем туеву хучу времени
Вот для подслоев
JavaScript:
var d = app.activeDocument;
var txt="";
for (var i =0; i< d.layers.length; i++)
    if (d.layers[i].parent.typename != "Layer")
        {
         txt+=(d.layers[i].name+"\t"+d.layers[i].locked+"\r\n");
        }
prompt("",txt);
 
надо попробовать....)))
 
и правда работает....))) 'cooll)'
 

Вложения

  • Untitled.jpg
    Untitled.jpg
    135.7 КБ · Просм.: 136
  • Untitled.jpg
    Untitled.jpg
    96.2 КБ · Просм.: 130