Сегодня вы используете Photoshop для различных задач. Эти задачи могут быть простыми и случайными, но однажды они могут измениться. Однажды они могут стать более сложными и утомительными, гораздо более повторяющимися. Или это могут быть одни и те же простые задачи, в одном и том же порядке, много раз.
Например:
Сегодня — Простые и случайные задачи Photoshop:
- Открыть изображение в Photoshop
- Использование точечной восстанавливающей кисти
- Применить настройку кривых
- Применить настройку оттенка/насыщенности
- Обрезать изображение
- Изменить размер изображения
- Экспорт
Один день — более сложный и утомительный, повторяющийся:
- Открыть изображение в фотошопе
- Дублировать слой 3 раза
- Скрыть слой, выбрать предыдущий слой
- Применить фильтр «Размытие по Гауссу»
- Показать предыдущий слой
- Используйте Применить изображение с загадочными параметрами, основанными на количестве бит вашего изображения на канал.
- Изменить режим наложения слоя
- Сгруппировать слои
- Переименовать слои
- Потратьте еще шесть часов, ретушируя поры кожи с помощью частотного разделения.
(Или) Один день — простые задачи, в одном и том же порядке, много раз:
- Открыть изображение в фотошопе
- Выделить все, скопировать
- Откройте шаблон макета Photoshop
- Выберите слой макета, отредактируйте содержимое смарт-объекта
- Вставить, Свободное преобразование, По площади
- Сохранить и закрыть смарт-объект
- Экспорт и закрытие шаблона макета
- Закрыть исходное изображение
- Сделайте глубокий вдох, прежде чем повторить описанные выше шаги для остальных 100 изображений в этой папке.
В этот день вы посмотрите на экшены Photoshop как на решение повторяющейся работы. Вы поймете, что большую часть повторения можно автоматизировать, чтобы оно было менее подвержено ошибкам и намного, намного быстрее. Таким образом, вы становитесь умнее, записываете некоторые действия, а затем используете их, чтобы быть более эффективными. Вы даже узнаете, как использовать пакетную обработку в Photoshop, чтобы применить одно и то же действие к папке, полной изображений.
Больше никаких утомительных задач в Photoshop. Большой.
Но тогда наступит другой день. Настанет день, когда ваше желание быть эффективным станет настолько сильным, а ваши идеи по автоматизации всего настолько продвинутыми, что экшены Photoshop больше не будут успевать за вами.
Ещё один день – Расширенная автоматизация:
- Откройте изображение контактного листа в Photoshop
- Предлагать пользователю ввести некоторые значения для описания количества строк и столбцов, размера ячейки, полей и интервалов контрольного листа
- Определить точные координаты первой ячейки контактного листа
- Создать новый текстовый элемент с определенным шрифтом и размером
- Поместите текст точно под первой ячейкой, выровняв ее по центру
- Вычислить положение центра следующей ячейки
- Дублируйте новый текст, переместите его под следующую ячейку
- Повторить для необходимого количества строк и столбцов
Вы сразу же поймете, что такая автоматизация не может быть достигнута с помощью записи действий, поскольку нет поддержки для запроса пользователем значений или выполнения каких-либо вычислений.
Вы удивитесь — это конец? Неужели нет никакого способа реализовать мои идеи? Я действительно должен положить им конец и принять реальность невозможности? Неужели Photoshop, программа, используемая миллионами, так ограничена? Действительно ли нет возможности для действия определить/установить/вычислить, является ли элемент вертикальным или горизонтальным, а затем предпринять соответствующие дальнейшие действия?
Затем вы выпьете еще кофе, опустошите два пакета чипсов, еще немного погуглите и придете к выводу, что возможно это возможно, используя какой-то странный код, который вы еще не можете понять.
r = new ActionReference ()
r.putEnumerated (stringIDToTypeID ("layer"), stringIDToTypeID ("ordinal"), stringIDToTypeID ("targetEnum"));
d = executeActionGet (r) .getObjectValue (stringIDToTypeID ("artboard")). getObjectValue (stringIDToTypeID ("artboardRect"))
То, что раньше казалось глубокой тьмой, теперь больше похоже на пурпур, с оттенками серого и тумана вокруг — проблеск надежды. На самом деле это всего лишь иллюзия, потому что эта глубокая тьма станет только темнее.
Окунитесь в мир сценариев Photoshop
Итак, теперь вы находитесь в другом дне. День, когда вы поняли, что единственный способ добиться желаемой автоматизации — это использовать скрипты Photoshop. Но что это такое? Как вы их используете? На каком языке они написаны? Где документация? С чего вы вообще начинаете?
Чтобы сэкономить ваше время, вот краткие ответы:
- Сценарии Photoshop — это файлы, содержащие код на разных языках, которые позволяют создавать функциональные возможности и использовать функции Photoshop, недоступные для действий.
- Вы используете их, главным образом, просматривая и выполняя отдельные файлы сценариев из Файл › Сценарии › Обзор… Photoshop или помещая файлы сценариев в определенную папку внутри папки установки Photoshop (в Windows это находится в папке C:\Program Files\Adobe\Adobe Photoshop 2022\Presets\Scripts), чтобы они стали доступны для выбора из Файл › Сценарии.
- Вы также можете использовать их, записывая действие и просматривая сценарий, чтобы в следующий раз, когда вам нужно будет запустить сценарий, вы просто воспроизвели это действие (вместо того, чтобы каждый раз просматривать сценарий).
- Скрипты могут быть написаны на трех языках: AppleScript (macOS), VBScript (Win) и JavaScript (macOS, Win). Чтобы ваш код работал как на macOS, так и на Windows, он должен быть написан на JavaScript. Это довольно круто, поскольку все уже знают JavaScript, верно? Возможно, но учитывая, что версия JS, поддерживаемая в Photoshop, — это ECMA Edition 3, датируемая 1999 годом, а сейчас мы находимся в версии/редакции 13 в 2022 году, это делает его немного менее крутым.
- Документация закончилась на https://www.adobe.com/devnet/photoshop/scripting.html.
- Хорошей отправной точкой является последний pdf-документ Photoshop Scripting Guide, доступный по ссылке выше, за которым следует последний pdf-файл Photoshop Javascript Reference или любой другой язык, на котором вы хотите кодировать.
Однако, если не найти (устаревшую) вводную статью о написании сценариев Photoshop, вам, вероятно, придется создать для себя лучшую картину всего, собрав кусочки ответов с форумов сообщества Adobe, вопросов и ответов на StackOverflow, иногда на GitHub. репозиторий, с которым вы можете столкнуться, или глубоко погрузившись в собственные существующие сценарии Photoshop в папке Scripts.
Если вы в конечном итоге загрузите файлы документации в формате PDF и погуглите «скрипты Photoshop переместите слой в точное положение на холсте», позвольте мне быть первым, кто поприветствует вас в кроличьей норе.
Во Части 2 этой статьи я расскажу о своем собственном опыте написания скриптов, некоторых примерах кода, а также о других головоломных странностях, с которыми вы обязательно столкнетесь на своем пути.