[AI CC-CC2021] Как передать переменной-массиву все элементы, расположенные в артборде

Андрей1977

Участник
Топикстартер
Сообщения
42
Реакции
1
Не могу понять до конца разницы между pathItems, pageItems, graphItems. Или только через selected. Пытался передать, подхватывает слои. Может надо вначале выбирать слой?
 

eugeny

15 лет на форуме
Сообщения
859
Реакции
210
К свойствам можно обращаться можно через document, layer, group.
pageItem это любой объект в документе, включая группы.
pathItem для работы с геометрией объекта.
graphItem это векторный объект.
Вначале выберите где вам нужны объекты: в документе или на конкретном слое.
 
  • Спасибо
Реакции: Андрей1977

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 228
Реакции
10 851
Какие именно элементы вас интересуют? Не может быть, чтобы прям всевсевсе, да и нет ко всем доступа из скриптинга. Sad but true :(
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 228
Реакции
10 851
И еще такой момент - артбоард в иллюстраторовской модели - понятие чисто геометрическое, он сам по себе не содержит каких либо обьектов, как слой или группа. Обьекты могут находиться внутри артбоарда, частично перекрываться с одним (или несколькими) артбордами или вообще лежать за пределами всех артбордов. Чтобы понять, лежит данный обьект на данном артборде - нужно проверять координаты. Выделить все обьекты на артборде штатными средствами обьектной модели тоже нельзя - только через костыли.
 

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
  • Спасибо
Реакции: Андрей1977 и _MBK_

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 228
Реакции
10 851
Document.selectObjectsOnActiveArtboard (): Boolean
Adobe Illustrator 22 Type Library
Select art objects in active artboard.
Это недавно сделали, в старых такого не было
 
  • Спасибо
Реакции: Андрей1977

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
тема про cc14, в cs5 2010 года было, дальше не копал.

только надо locked и hidden снимать сначала на все, по мне координаты быстрее сравнить
 
Последнее редактирование:

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 228
Реакции
10 851
Хотя да, тогда и артбордов не было. Появилось вместе с артбордами, значит.
 

Андрей1977

Участник
Топикстартер
Сообщения
42
Реакции
1
Какие именно элементы вас интересуют? Не может быть, чтобы прям всевсевсе, да и нет ко всем доступа из скриптинга. Sad but true :(
Например, на артборде или в документе есть два элемента - 2 rectangels. Они не выбраны. Я хочу определить для них по очередно через цикл какое-то действие. Мне нужно получить доступ к этим элементам для взаимодействия с ними.
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 228
Реакции
10 851
на артборде или в документе есть два элемента
Так на артборде или в документе?
Если в документе (неважно, что на артборде) перебираете все activeDocument.pathItems
Если именно на артборде то или выделяете все объекты на артборде через вышеописанный метод и перебираете selection или просто перебираете activeDocument.pathItems с проверкой координат