Регулировка яркости и контраста слоя коррекции
Работа с коррекцией яркости/контраста в Photoshop с использованием Java
В этой статье мы применим коррекцию яркости/контраста к документу Adobe® Photoshop® с помощью библиотеки Aspose.PSD для Java®. Также мы узнаем больше о функциях библиотеки, связанных с этим типом слоя коррекции в дальнейшем.
Но сначала немного теории.
Слой коррекции яркости/контраста изменяет яркость и контраст изображения. Но подождите минутку, что это на самом деле означает? Увеличение яркости светлит цветовое значение до белого, а уменьшение яркости затемняет цветовое значение до черного. Увеличение контраста, в свою очередь, увеличит разницу между светлыми и темными цветами, а уменьшение контраста, соответственно, уменьшит эту разницу; это означает, что светлые цвета становятся светлее, а темные – темнее.
Поддержка цветовых режимов
Библиотека позволяет добавлять слой коррекции яркости/контраста к изображениям в режимах цветности RGB, CMYK или Lab.
Текущее и старое поведение
Текущая реализация библиотеки (на момент написания v20.6) использует алгоритм Photoshop по умолчанию, который сохраняет полный тональный диапазон от теней до светлых мест, однако еще не поддерживает устаревшее поведение. Это означает, что библиотека поддерживает слой коррекции яркости/контраста в документах, созданных в последних версиях Photoshop (CS4 и выше). Однако, если вам это нужно, вы можете запросить устаревшую реализацию слоя коррекции яркости/контраста на нашем форуме.
Настройка яркости и контраста
Рассмотрим, как работает высокоуровневый API слоя коррекции яркости/контраста (предвкушая, API прост в использовании). Класс PsdImage содержит фабричный метод (addBrightnessContrastAdjustmentLayer) для создания экземпляра класса BrightnessContrastLayer, который является шлюзом для настройки яркости и контраста. Класс BrightnessContrastLayer содержит пару геттеров и сеттеров для доступа к свойствам яркости и контраста, а также для изменения их значений.
Итак, давайте возьмем, например, изображение собаки (b), чтобы настроить его яркость1 и контраст2 (a), используя только фабричный метод с соответствующими аргументами, чтобы в конечном итоге получить изображение (c), которое будет выглядеть более ярким:
BrightnessContrastLayer brightnessContrastLayer = psdImage.addBrightnessContrastAdjustmentLayer(15, 27);
Примечания:
- Значение яркости должно быть в диапазоне от -150 до 150.
- Значение контраста должно быть в диапазоне от -50 до 100.
См. документацию по BrightnessContrastLayer для получения более подробной информации.
Заключение
В этой статье мы получили краткий обзор слоя коррекции яркости/контраста и узнали, как настроить яркость и контраст изображения с помощью фабричного метода.
Обратитесь к нашей серии статей о API слоев коррекции в Aspose.PSD для Java, чтобы узнать больше.