Погружаемся в скриптинг

Погружаемся в скриптингПисать скрипты для Фотошопа, зачастую, нудно и больно (привет многочисленным багам и индийским разработчикам). Но бывает увлекательно и полезно. А если вы знакомы с JavaScript, то и достаточно легко.

Подготовка

Вам понадобится программа Adobe ExtendScript Toolkit. ваш Фотошоп и немного усердия.

После установки запускаем ExtendScript Toolkit и в левом-верхнем углу меняем “ExtendScript Toolkit CC” из выпадающего меню на Фотошоп. Делаем это для того, что бы по нажатию зелёной стрелочки наш скрипт запускался в Фотошопе.

Мы готовы. Весь код, который будет идти дальше, можно писать и выполнять в свежеустановленном ExtendScript Toolkit, а по-окончанию сего действа — сохранить в файл. jsx и пользоваться в своё удовольствие.

Не будем вникать в объектную модель Фотошопа и прочие сложные термины, про которые вы сможете прочитать в официальной документации (даже с картинками). Ссылки есть в конце поста.

В бой.

Работа с активным слоем

Чаще всего мы хотим что-либо сделать с активным слоем. Для этого необходимо обратиться к Фотошопу (app ), затем к активному документу (activeDocument ) и, наконец, к нашему слою (activeLayer ).

У слоя есть свойства и методы (выполняемые действия), как и у остальных объектов (документов, каналов, текста, векторных шейпов, …).

Например, что бы узнать имя слоя — нужно обратиться к свойству name .

А что бы переименовать слой:

Скрыть или показать слой — свойство visible .

Подвигать содержимое слоя по холсту — метод translate .

А так же можно узнавать границы содержимого (bounds ), изменять прозрачность слоя (opacity ) и заливки (fillOpacity ), дублировать (duplicate ), масштабировать (resize ) и так далее.

Полный перечень свойств и методов для всех доступных объектов можно узнать в официальной документации, ссылку на которую я прикрепил в конце поста.

Усложняем задачу

Допустим, у нас есть документ с текстовым слоем (в нём что-то написано).

Что бы сходу окунуться с головой в скриптинг, напишем код, который будет узнавать шрифт, размер, интерлиньяж и цвет написанного текста и вставлять их в имя слоя. Какому-нибудь верстальщику будет приятно.

После выполнения такого скрипта имя нашего слоя превратится в нечто подобное:

ArialMT, 14 pt, #000000

Или ничего не произойдёт, так как мы можем встретиться с нашим первым багом Фотошопа. ☺

Дело в том, что если создать новый текстовый слой и не изменять ему цвет, а оставить дефолтный чёрный (#000000), то по какой-то причине Фотошоп не может получить это значение. Подобный баг далеко не единственный, но, зачастую, они побеждаются довольно легко — при помощи javascript-конструкции “try…catch”. Данная синтаксическая конструкция пытается выполнить кусок кода прописанный в try. а если возникает ошибка — выполняет кусок кода из catch .

Подробнее про try…catch на сайте javascript. ru .

Итак, фиксим возможную ошибку с определением цвета:

Получаем следующее:

Теперь наш код точно сработает.

как отключить ява скрипт

как довести до скрипта

как включить ява скрипт в яндекс

This entry was posted in Как делать скрипты and tagged , , , . Bookmark the <a href="http://iprowebber.ru/pogruzhaemsya-v-skripting/" title="Permalink to Погружаемся в скриптинг" rel="bookmark">permalink</a>.

Comments are closed.