Как записать скрипт в фотошопе

Обновлено: 07.07.2024

В данном уроке мы разберём тему экшенов или экшен-скриптов в фотошопе. В ходе урока мы создадим экшен с эффектом кинематографичного фото, сохраним его на компьютер и рассмотрим процесс установки готового экшена в библиотеку Photoshop.

1. Для чего нужны экшены

Action script - в переводе с английского означает "последовательность действий". Программа фотошоп имеет уникальную функцию работы с экшен скриптами. Она может запоминать все действия пользователя, записывать их и воспроизводить. Например, вам нужно наложить какой-то определённый эффект на фото и вы для этого совершаете ряд действий. Действий может быть как несколько, допустим цветокоррекция и настройка уровней. Так и очень много, начиная с цветокоррекции, заканчивая наложением слоёв с различными фильтрами, стилями и даже футажами.

Тут можно рассмотреть несколько ситуаций. Допустим, вам нужно обработать большое количество фотографий в каком-то одном стиле и наложить на все эти фото какой-то определенный эффект. Вместо того, чтобы каждое фото долго и монотонно обрабатывать вы можете обработать одно фото, записать все свои действия в экшен, после чего дать команду фотошопу и он автоматически обработает все ваши фото по записанному вами скрипту. Тем самым вы сэкономите кучу времени и нервов.

Другая ситуация необходимости экшена - это просто не желание или не надобность разбираться и изучать создание какого-нибудь сложного эффекта или стиля. Вы можете найти и скачать какой-нибудь бесплатный экшен с необходимым эффектом или купить авторский экшен, установить его в фотошоп и задать любому фото данный эффект или стиль.

2. Создание простого экшена для фотошоп

В данном уроке мы разберём способ создания как простого экшена, так и управляемого. Для примера будем делать экшен с простым эффектом кинематографичного фото. Для работы я взял фото девушки, вы можете взять любое своё или скачать это же. Ссылка на исходник к уроку и готовый экшен будет, как обычно, в описании под видео.

И так, у меня открыто фото и первым делом переходим в пункт меню "Окно" - "Операции" или нажимаем комбинацию клвишь "Alt + F9".

как создать экшен скрипт в фотошопе

В результате открывается окно операций, где мы видим две вкладки: "История" и "Операции". Во вкладке "Операции", как раз-таки имеется список стандартных операциё, т.е. экшенов фотошоп. Не знаю кто ими пользуется, они все тут так себе, созданы наверное больше для примера, чем для работы.

как создать экшен скрипт в фотошопе

Чтобы применить какой-нибудь экшен к нашему изображению нужно просто выделить слой с нашим изображением, затем выделить в списке нужную операцию экшена и запустить её, нажав вот на кнопку "play". Ну давайте применим какой-нибудь эффект к нашему фото, например "Деревянная рамка".

как создать экшен скрипт в фотошопе

В результате на фото получилась вот такая рамка. Теперь, если открыть вкладку "История", то в ней будут отображаться все действия по порядку, которые выполнила программа с нашим фото для получения такого вот эффекта деревянной рамки.

как создать экшен скрипт в фотошопе

Для того чтобы создать свой экшен, необходимо во вкладке "Операции" кликнуть по значку плюсика и в открывшемся окне задать имя операции, в нашем случае пусть будет "Кинематографичное фото". Остальные настройки операции оставляем по умолчанию и нажимаем "Записать".

как создать экшен скрипт в фотошопе

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

как сделать экшен в Photoshop

Приступаем к наложению эффекта. Первым делом наложим корректирующий слой с градиентом на фото. Устанавливаем чёрный цвет, кликаем в панели слоёв по значку корректирующего слоя и выбираем "Градиент".

как сделать экшен в Photoshop

В появившемся окне настроек градиента устанавливаем необходимые параметры. Градиент тут должен быть на прозрачном фоне, стиль выбираем "Радиальный", угол выставим в ноль, масштаб поставим на 300%, включим инверсию, остальное оставляем по умолчанию и нажимаем "Ок".

как сделать экшен в Photoshop

Таким образом, у нас получилось небольшое виньетирование. Далее создаём еще один корректирующий слой с микшированием каналов.

как сделать экшен в Photoshop

Открываем синий цветовой канал и настраиваем тут следующие значения: зелёный прибавляем примерно до 75%, а синему задаём около 25%.

как сделать экшен в Photoshop

Теперь подключаем еще один корректирующий слой "Выборочная коррекция цвета".

урок по созданию экшен скрипта в фотошопе

Устанавливаем тут режим коррекции "Абсолютный" и при выбранном красном цвете настраиваем примерно такие значения: голубой прибавляем примерно на 30%, пурпурный на 10% и чёрный на 45%.

урок по созданию экшен скрипта в фотошопе

Далее выбираем чёрный цвет и делаем настройки: голубой примерно на 9% и чёрный на 15%. В результате получаем эффект кинематографичного фото и теперь останавливаем запись операции, кликнув по кнопке "Стоп".

урок по созданию экшен скрипта в фотошопе

Фотошоп сохранил все наши действия в эту операцию. Если мы откроем какое-нибудь другое фото, то сможем применить к нему записанный нами экшен. Выделяем слой с фото, выбираем нашу операцию и включаем её.

урок по созданию экшен скрипта в фотошопе

В результате, фотошоп автоматически повторил все записанные нами действия на данном фото.

урок по созданию экшен скрипта в фотошопе

Теперь, я думаю, вы понимаете, что экшен в фотошоп - это такой набор операций. Операция, в свою очередь, содержит в себе набор действий. Экшен может быть как простым - состоять из одной операции, как у нас сейчас, так и сложными, состоять не из одной операции, а из нескольких. И для получения результата от сложного экшена пользователю нужно включать определённые операции в нужном порядке. Обычно к таким сложным экшенам авторы прилагают инструкцию, в которой описывают последовательность действий.

3. Создание управляемого эешена для фотошоп

Мы создали простой экшен, состоящий из одной операции, при запуске которого фотошоп автоматически без остановки проделывает все записанные действия. Но что, если вы хотите сделать так, чтобы экшен не просто проигрывался весь на автомате, а останавливался на каком-нибудь действии и давал возможность пользователю внести изменения в это действие? На самом деле сделать такое не сложно и такие экшены называются "управляемыми".

Допустим, мы хотим сделать так, чтобы при первом действии - создании слоя с градиентом, фотошоп дал нам возможность установить настройки этого градиента. Для этого в окне операций открываем вкладку "операции" и ищем нужное нам действие (градиент). И на против него подключаем вот такую пинтограмму, которая называется "Открытие диалогового окна".

Как сделать экшен для фотошоп

Теперь, когда мы включим операцию она на этом действии откроет диалоговое окно с настройками градиента и мы сможем задать нужные параметры, после чего фотошоп продолжит выполнение последующих действий экшена.

Как сделать экшен для фотошоп

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

Как сделать экшен для фотошоп

Как сделать экшен для фотошоп

Как сделать экшен для фотошоп

использование экшенов в фотошопе

Теперь, когда экшен у нас готов, его нужно как-то сохранить на компьтер, чтобы можно было кому-нибудь передать или просто сохранить для своей коллекции. Сейчас наш экшен находится в папке "Операции по умолчанию", такие папки называются наборами.

использование экшенов в фотошопе

Для того, чтобы его сохранить на компьютер, он должен быть у нас в отдельной папке, т.е. в отдельном наборе. Для этого создаём новый набор, задаём ему имя и просто перетаскиваем нашу операцию мышкой в этот набор (папку).

использование экшенов в фотошопе

Теперь у нас имеется отдельный набор, экшен.

использование экшенов в фотошопе

Выделяем его, кликаем по этому значку и выбираем "Сохранить операции" и сохраняем экшен в нужную дирректорию.

использование экшенов в фотошопе

Вот у нас появился файл с экшеном, который имеет формат ATN.

сохранение экшена фотошоп

Теперь давайте попробуем его установить в фотошоп. Удалим этот экшен из панели операций и удалим все слои с эффектом. Кликаем опять по этому значку и выбираем "Загрузить операции", указываем наш экшен и он появляется в списке.

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

Подготовка

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Это уже что-то похожее на нужный результат, но мы пойдём дальше и добавим ещё немного магии.

Ниже финальная версия скрипта в которой я предлагаю вам разобраться самостоятельно.

В итоге, имя нашего слоя превратится в нечто похожее:

Про запуск скриптов и назначение их на горячие клавиши повторять не буду. Лучше почитайте в статье Сергея Пехтерева.

Полезные материалы

    — в ней мы пишем скрипты ) ) — официальное сообщество — неофициальный форум о скриптах для Фотошопа

P. S. Не обращайте внимание на даты материалов, так как возможность написания скриптов в Фотошопе появилась ещё в версии CS2 (2005 год) и с тех пор ничего не изменилось. Во всех версиях, с CS2 до сегодняшней, код работает одинаково.

Скрипты в Photoshop не только предоставляют возможность автоматизировать повторяющиеся действия, но и позволяют записывать события, производимые в Фотошопе пользователем, в скрипт! Это очень полезно, когда не знаешь, как прописать в программном коде то или иное действие.

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

Примечание. Для лучшего понимания материала, смотрите видео внизу этой странички.

Для того, чтобы Photoshop записывал свои действия, следует в папку C:\Program Files\Adobe\Adobe Photoshop CS6\Plug-ins или C:\Program Files\Adobe\Adobe Photoshop CS6 (64 Bit)\Plug-ins для 64-х битного Фотошопа поместить файл ScriptListener.8li. В более ранних версиях программы этот файл размещался в директории Files\Adobe\Adobe Photoshop CS5\Scripting\Utilities, а для CS6 его придётся скачать на официальном сайте программы или по ссылкам внизу этой страницы.

скрипты фотошоп

После добавления файла следует перезапустить программу. После этого произведите любое действие в Photoshop и на Вашем рабочем столе появятся два файла - ScriptingListenerJS.log и ScriptingListenerVB.log. В первом из них события записываются на языке JavaScript, во втором - на Visual Basic Script.

Я пользуюсь JavaScript, поэтому далее буду рассматривать второй вариант.

Итак, перед записью событий откройте файл ScriptingListenerJS.log в любом текстовом редакторе, удалите все имеющиеся в нём записи и сохраните его. Затем произведите нужные действия в Photoshop`е.

Для примера, я произвёл следующие действия, кстати, одно из этих действий - сохранение для Web - невозможно автоматизировать и записать с помощью обычных Action:

  • создал новый документ с белым фоном размером 600 на 400 пикселей
  • залил его дефолтным основным цветом - чёрным
  • сохранил для Web в формате JPG с качеством 50% на рабочем столе

Теперь открываю файл ScriptingListenerJS.log и вижу следующий код:

Теперь давайте убедимся, что в коде содержатся именно те действия, которые я совершил.

Для этого можно скопировать код, сохранить его в файле с расширением jsx, затем просто мышкой перетащить этот файл в рабочее окно Фотошопа.

Либо открыть редактор Adobe ExtendScript Toolkit CS6, инсталлирующийся при установке Photoshop CS6, выбрать в левом верхнем углу "Adobe Photoshop CS6", затем нажать на кнопку "Start running the script" (зелёный треугольник).

Примечание. В Photoshop CC бесплатное приложение ExtendScript Toolkit CC надо скачать через Adobe Creative Cloud.

В любом случае, Фотошоп воспроизведёт действия, которые я только что записал.

Смотрите видео по материалам статьи:

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

как увеличить картинку без потери качества

Сделаем значительное увеличение, чтобы разница была хорошо заметна.

как увеличить картинку без потери качества

Получается вот такой результат, после увеличения фото стало подразмытым (не четким).

как увеличить картинку без потери качества

То же самое произойдет и при его уменьшении.

Ресамплинг в фотошопе

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

увеличение изображения без потери качества

Рассмотрим такой макет, где серый квадрат - это изображение, которое состоит из пикселей. При увеличении размера растрового изображения мы увеличиваем данные изображения, но количество пикселей на дюйм остается прежним. Тем самым, мы просто увеличиваем пространство между пикселями и плотность пикселей становится меньше.

увеличение изображения без потери качества

Поэтому изображение выглядит размытым. Противоположная ситуация возникает при уменьшении. Количество пикселей не уменьшается, а плотно сжимается и качество изображения падает.

В фотошопе предусмотрено изменение размера изображения используя resampling. Resampling - это способ изменения данных изображения, при котором, в случае изменения размера изменяется и количество пикселей. То есть, при увеличении размера изображения - увеличивается количество пикселей и наоборот, при уменьшении - уменьшается.

увеличение изображения без потери качества

Несмотря на то, что количество пикселей увеличивается и уменьшается вместе с размером изображения, качество все равно будет падать. Дело в том, что любое действие с пикселями - добавление их или вычитание, неизбежно приводит к появлению шума, потому что нарушается первоначальная структура - плотность пиксельного изображения.

В фотошопе есть возможность применять resampling различными методами и при правильном выборе метода можно значительно снизить потери качества изображения, при его увеличении или при его уменьшении. Давайте рассмотрим, в каких случаях, какой метод лучше применять.

Методы ресамплинга

Откроем параметры размера изображения, для этого в верхнем меню выбираем "Изображение" - "Размер изображения". По умолчанию, в фотошопе включен resampling и выставлен автоматический выбор метода.

Ресамплинг в фотошопе

Автоматический выбор не дает хорошего результата. Если рассмотреть resampling в случае с изображением пиксельным, точнее не пиксельным с острыми краями, то его проще увеличить, сохранив качество. Возьмём к примеру вот такое изображение, размером 300 на 300 пикселей, если мы его увеличим до 2300 пикселей, то увидим, что у нас размылись края, то есть изображение ухудшилось.

Ресамплинг в фотошопе

Но, если мы при увеличении размера применим на resampling параметр "По соседним пикселям четкие края", то картинка останется в отличном качестве.

Ресамплинг в фотошопе

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

увеличить фото без потери качества фотошоп

Если же говорить о фото, то здесь ситуация сложнее. Фото, в любом случае, теряет качество, но при правильных настройках ресампинга можно максимально сохранить его, при увеличении или уменьшении. Например, если взять эту же картинку с медведем и применить к ней resampling при увеличении "автоматический", то изображение в качестве потеряет, оно станет более размытым, ранее мы в этом убедились. В таком случае нужно настроить ресамплинг определённым образом. Переходим в "Редактирование" - "Настройки просмотра технологии.." и ставим галочку у параметра "Масштабирование с сохранением деталей 2.0".

увеличить фото без потери качества фотошоп

Данная функция присутствует, к сожалению, только в фотошопе начиная с версии СС, в более ранних релизах её нет. Теперь, если мы снова откроем параметры размера изображения, то увидим, что в resampling появился этот новый метод - "Сохранение деталей 2.0".

увеличить фото без потери качества фотошоп

Давайте так же увеличим это изображение с приминением этого метода и посмотрим на разницу в качестве. Здесь так же можно регулировать "шум", допустим выставим его на значение "20" и посмотрим, что у нас получилось.

что такое resampling photoshop

Вроде бы, с одной стороны, особой разницы нет, но здесь всё зависит от самого изображения, а так же настроек шума.

что такое resampling photoshop

Важно исходить из самого случая, если вам нужно увеличить изображение, то - это одно, если уменьшить, то - другое. Если это будет какой-то пиксель-арт или векторная фигура, то у вас проблем вообще не возникнет, а вот если фото, то тут уже можно поэкспериментировать.

Я вам показал один из новых методов которые присутствуют только в Photoshop СС, данный метод тоже не исключает искажения изображения, то есть ухудшения качества, но он по заявлению разработчиков работает немного лучше, чем автоматический или другие режимы. Но, думаю, что все зависит от конкретной фотографии, от конкретного изображения. В некоторых случаях он покажет себя лучше, в других - хуже.

Читайте также: