Как автоматизировать Photoshop с помощью скриптов Photoshop

Как автоматизировать Photoshop с помощью скриптов Photoshop

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





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





Не волнуйтесь, если это звучит сложно: скрипты написаны на JavaScript, простом, но мощном языке.





Если ты фанат GIMP или не хотите тратить деньги на Photoshop, тогда ознакомьтесь с нашим руководством по автоматизации GIMP с помощью скриптов.

Ваш первый сценарий: изменение размера изображений

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



лучший браузер для windows xp 2018

Набор инструментов ExtendScript включен в вашу подписку на Creative Cloud, поэтому продолжайте и устанавливайте его со своего Приложение Creative Cloud или на веб-сайте выше.

После установки откройте набор инструментов. Вам будет представлен этот довольно устаревший интерфейс:





Вот код вашего первого скрипта - скопируйте и вставьте его в главное окно кода слева:

current_document = app.activeDocument;
new_width = 670;
current_document.resizeImage(
UnitValue(new_width, 'px'),
null,
null,
ResampleMethod.BICUBIC
);

Давайте разберемся, что делает этот код. В current_document переменная хранит активный документ объект из фотошопа. Доступ к нему осуществляется с помощью app.activeDocument синтаксис. Если у вас не запущен Photoshop с открытым документом, этот код будет выбросить исключение . Исключения - это способы остановки выполнения кода - этот сценарий не может продолжаться, если нет документа!





В new_width переменная сохраняет ширину вашего нового документа.

Наконец, resizeImage изменяет размер изображения. Это должно быть доступно через current_document Переменная. Вам нужно передать новую ширину (преобразованную в пиксели через Стоимость единицы метод), а ResampleMethod из БИКУБИЧЕСКИЙ .

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

  1. Ближайший сосед: Очень быстро, но просто.
  2. Билинейный: Лучше, чем ближайший сосед, но медленнее и не так хорошо, как Bicubic.
  3. Бикубический: Очень хорошие результаты, но в вычислительном отношении дорого.
  4. Бикубический сглаживание: Улучшенная версия Bicubic для масштабирования (увеличения).
  5. Бикубическая резкость: Усовершенствованная версия Bicubic, предназначенная для понижающей дискретизации (уменьшения).

Не забывайте использовать их в своем коде с заглавной буквы.

Теперь, когда вы понимаете код, пора его запустить! Убедитесь, что у вас открыт Photoshop вместе с документом.

В верхней части ExtendScript Toolkit измените цель раскрывающееся меню (вверху слева) из ExtendScript Toolkit CC к Adobe Photoshop CC 2017 (или какая у вас конкретная версия Photoshop). Если вы пишете сценарии для других приложений Adobe, вы можете изменить это на них.

Теперь нажмите Играть справа от целевого раскрывающегося списка на В правом верхнем углу вашего кода.

Если все прошло правильно, размер вашего документа теперь изменен (не забудьте сохранить его). В Консоль JavaScript в правом верхнем углу инструментария отобразит результат выполнения сценария. Поскольку нет вывода, будет сказано Результат: не определено .

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

Это может быть простая опечатка, поэтому после остановки скрипта ( Верхние правые элементы управления > Кнопка остановки ), двойная проверка:

  • Ваш код правильный и без опечаток.
  • Photoshop запущен.
  • У вас открыт документ в Photoshop.

Запуск скриптов

Теперь ваш код работает правильно, пора добавить его в Photoshop.

Внутри вашего набора инструментов перейдите к Файл > Сохранить , и сохраните ваш сценарий в подходящем месте с подходящим именем. По умолчанию это будет Adobe Сценарии папка. Обратите внимание, как скрипты должны заканчиваться .jsx формат.

В Photoshop перейдите в Файл > Скрипты > Менеджер событий сценария . Галочка Разрешить событиям запускать сценарии / действия .

После включения этот интерфейс позволяет вам настроить существующие сценарии для запуска при выполнении определенных действий. Есть несколько ключевых направлений:

  1. Событие Photoshop: Это когда скрипт запустится. Вы можете выбрать один из множества вариантов, например, при печати, при открытии нового документа и многих других.
  2. Сценарий: Это сценарий для запуска. Есть несколько встроенных базовых скриптов, но вы также можете назначить здесь один из ваших собственных скриптов.
  3. Действие: Если вы не используете сценарий, вы можете выбрать базовое действие для выполнения, например, сохранить в PDF.

Выбирать Сценарий , а затем выберите Просматривать . Выберите свой сценарий. Идите вперед и выберите событие, которое запустит ваш скрипт.

После настройки нажмите Добавлять а потом Выполнено . В этом меню также можно редактировать или удалять любые ранее настроенные сценарии.

Если вы не хотите связывать свой сценарий с действием, его еще проще настроить. Перейти к Файл > Скрипты > Просматривать . Перейдите к своему сценарию и нажмите 'Открыть'. Ваш скрипт немедленно запустится.

Если вы хотите видеть свой скрипт в этом меню скриптов, вам необходимо скопировать его в соответствующую папку. Это можно найти в Предустановки > Скрипты папку установки Photoshop.

После копирования перезапустите Photoshop. После перезапуска ваш скрипт будет отображаться как пункт меню в Файл > Скрипты Меню.

Изменение размера изображений: улучшение

Теперь, когда у вас есть понимание скриптов Photoshop, пришло время улучшить код.

Этот код очень хорошо работает при изменении размера изображений до 670 пикселей (или любого другого размера, на который вы его изменили), но это могло быть лучше. К счастью, JavaScript - очень гибкий язык!

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

current_document = app.activeDocument;
new_width = 670;
if(current_document.width > new_width) {
current_document.resizeImage(
UnitValue(new_width, 'px'),
null,
null,
ResampleMethod.BICUBIC
);
}

Здесь есть только одно изменение. An если оператор обернут вокруг метода изменения размера. Если текущая ширина документа (доступ через current_document.width ) меньше новой ширины, не изменяйте размер.

Это гарантирует, что маленькие изображения не будут увеличены, что снизит качество.

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

Вот одно последнее изменение:

imessage не работает на Mac
current_document = app.activeDocument; // Get the active document
new_width = 670; // new width to ressize to
if(current_document.width > new_width) {
// if document is larger than new size
current_document.resizeImage(
UnitValue(new_width, 'px'),
null,
null,
ResampleMethod.BICUBICSHARPER
);
}
current_document.activeLayer.autoContrast(); // Apply contrast
current_doc.activeLayer.applySharpen(); // Apply Sharpen

Этот код теперь содержит комментарии, которые должны быть во всем коде и которые помогут вам в будущем.

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

Наконец, на последнем этапе были применены контраст и резкость.

Что вы будете кодировать?

К настоящему времени вы должны знать все, что вам нужно для автоматизации что-нибудь в фотошопе! Если вы можете сделать это в Photoshop, вы, вероятно, сможете автоматизировать это. Photoshop API предоставляет доступ ко многим функциям, и их документация описывает почти все функции, к которым вы можете получить доступ.

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

Вы узнали что-нибудь новое сегодня? Какие твои любимые сценарии? Дайте нам знать в комментариях ниже!

Кредит изображения: whiteMocca через Shutterstock.com

Делиться Делиться Твитнуть Эл. адрес Как изменить внешний вид рабочего стола Windows 10

Хотите узнать, как улучшить внешний вид Windows 10? Используйте эти простые настройки, чтобы сделать Windows 10 своей собственной.

Читать далее
Похожие темы
  • творческий
  • Программирование
  • Фотография
  • Adobe Photoshop
  • Сценарии
Об авторе Джо Коберн(136 опубликованных статей)

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

Ещё от Joe Coburn

Подписывайтесь на нашу новостную рассылку

Подпишитесь на нашу рассылку, чтобы получать технические советы, обзоры, бесплатные электронные книги и эксклюзивные предложения!

Нажмите здесь, чтобы подписаться