Не работают скрипты из учебного пособия Adobe (JS)

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

alalal011

Участник
Топикстартер
Сообщения
8
Реакции
0
Начал изучать скриптинг, пробую примеры из Adobe Introduction to Scripting,
но начиная с 1-го некоторые примеры не работают как надо, некоторые инструкции (команды) выполняются, а некоторые нет.
Надо как-то дальше продвигаться, а я на этих застрял, не понимаю почему такие "несуразы" в официальном пособии.

1) Не меняет название слоя, хотя документ и слой создает
var myDoc = app.documents.add()
var myLayer = myDoc.layers.add()
myLayer.properties = {name:"My New Layer", visible:false}

2) Пишет внизу UIColor is undefined, цвет слоя не меняет
var myDoc = app.documents.add()
var myLayer = myDoc.layers.add()
myLayer.layerColor=UIColor.darkGreen


Спасибо
 

Fog_patch

12 лет на форуме
Сообщения
3 163
Реакции
998
Ответ: Не работают скрипты из учебного пособия Adobe (JS)

С джавой помочь не смогу, но на бейсике это может выглядеть так (обе задачи):
PHP:
Set ap = CreateObject("Illustrator.Application")
Set Doc = ap.ActiveDocument

Set mylayer = Doc.Layers.Add
mylayer.Name = "тест"
mylayer.Visible = False
mylayer.Color.Red = 100
mylayer.Color.Green = 100
mylayer.Color.Blue = 200

А вообще привыкайте. У эдоби ошибки в скриптах и документации по скриптам — это фирменный стиль уже такой.
 

Eugenyus

12 лет на форуме
Сообщения
1 960
Реакции
3 589
Ответ: Не работают скрипты из учебного пособия Adobe (JS)

PHP:
var myDoc = app.documents.add()
var myLayer = myDoc.layers.add()
myLayer.name = "My New Layer"
myLayer.visible = false

PHP:
var myDoc = app.documents.add()
var myLayer = myDoc.layers.add()
myLayer.color.red = 0;
myLayer.color.green = 85;
myLayer.color.blue = 0;
 

Mic256

15 лет на форуме
Сообщения
1 626
Реакции
564
Ответ: Не работают скрипты из учебного пособия Adobe (JS)


Не по теме:
2 Eugenyus, угу :)
 

Fog_patch

12 лет на форуме
Сообщения
3 163
Реакции
998
Ответ: Не работают скрипты из учебного пособия Adobe (JS)

В официальных скриптах для индизайна тоже куча ошибок. Помнится в cs3 (вроде) одна треть примеров не работала.
 

alalal011

Участник
Топикстартер
Сообщения
8
Реакции
0
Ответ: Не работают скрипты из учебного пособия Adobe (JS)


Не по теме:

Это тоже :).
Только вот так:
myLayer.layerColor=UIColors.DARK_GREEN


В Иллюстраторе не работает. То-же самое пишет UIColor is undefined.
Строчку с поста копировал.
 

Eugenyus

12 лет на форуме
Сообщения
1 960
Реакции
3 589
Ответ: Не работают скрипты из учебного пособия Adobe (JS)

alalal011, внимательнее. Смотрите посты выше.
 

Eugenyus

12 лет на форуме
Сообщения
1 960
Реакции
3 589
Ответ: Не работают скрипты из учебного пособия Adobe (JS)

Я имею ввиду, что эта строчка работает в Индизайне :). Для Иллюстратора см. пост №3.
 

alalal011

Участник
Топикстартер
Сообщения
8
Реакции
0
Ответ: Не работают скрипты из учебного пособия Adobe (JS)

Это хорошо, конечно, но я хочу написать скрипт именно для Иллюстратора, и язык я хочу освоить (в какой-то мере хотя-бы) именно JavaScript, да и ExtendScript Toolkit вещь довольно удобная для обучения на мой взгляд, и не хотелось бы в начале освоения переходить аж на другой язык. Может кто-нибудь подскажет все-таки как правильно написать в приведенных мною случаях?
Вообще цель у меня написать скрипт для экспорта в JPEG, чтобы миновать диалоговое окно с параметрами, чтобы сразу в RGB и 150 dpi.
Может моя методика изучения не очень верная? Я пробую все примеры, потому что это типа практики, да и знние методов из учебного пособия придает уверенности, что-ли.
 

alalal011

Участник
Топикстартер
Сообщения
8
Реакции
0
Ответ: Не работают скрипты из учебного пособия Adobe (JS)

PHP:
var myDoc = app.documents.add()
var myLayer = myDoc.layers.add()
myLayer.name = "My New Layer"
myLayer.visible = false

А я думал это PHP, смотрю, до чего похож. Да, просто и эффективно, зачем скобки городить какие-то? Спасибо

PHP:
var myDoc = app.documents.add()
var myLayer = myDoc.layers.add()
myLayer.color.red = 0;
myLayer.color.green = 85;
myLayer.color.blue = 0;

А по именам называть никак не получится? Впрочем, это не очень важная "фича", пока можно пренебречь.

Благодарю
 

Eugenyus

12 лет на форуме
Сообщения
1 960
Реакции
3 589
Ответ: Не работают скрипты из учебного пособия Adobe (JS)


Не по теме:
Вы не первый, кого это самое "PHP" сбивает с толку. :)
И второе: всё-таки интересно, что же Вы читаете? Здесь написано:
Дополнительную информацию о поддержке сценариев в программе Illustrator можно найти в примерах сценариев и в документации по поддержке сценариев в папке Adobe Illustrator CS5/Scripting.
Вы там были?

 

alalal011

Участник
Топикстартер
Сообщения
8
Реакции
0
Ответ: Не работают скрипты из учебного пособия Adobe (JS)

Был, несколько времени назад, и читаю как раз распечатанный Adobe Intro to Scripting.pdf именно оттуда. Еще там есть JavaScript Tools Guide CS4.pdf, я его листал и думаю сначала Intro окончить, дальше посмотрю что лучше будет. Еще скрипты там есть.

Еще раз полистал JavaScript Tools Guide CS4.pdf и понял что там про довольно специализированные функции языка JS применительно к Иллюстратору.
Мне это пока сложновато и преждевременно, мне кажется. Азы бы усвоить ... :)
 
Статус
Закрыто для дальнейших ответов.