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

Документация
L Laravel L intervention/image
Войти
Главная image 3.x Эффекты изображений

Эффекты изображений

3.x 7 мар 2026 г.

#Яркость, контраст и цвета

#Изменение яркости изображения

public Image::brightness(int $level): ImageInterface

Изменяет яркость текущего изображения на заданный уровень. Используйте значения между -100 для минимальной яркости, 0 для отсутствия изменений и +100 для максимальной яркости.

#Параметры

Name Type Description
level integer Уровень изменения яркости

#Пример

use Intervention\Image\ImageManager;
use Intervention\Image\Drivers\Imagick\Driver;

// создать новый экземпляр менеджера с указанным драйвером
$manager = new ImageManager(new Driver());

// прочитать изображение
$image = $manager->read('images/example.png');

// увеличить яркость
$image = $image->brightness(35);

#Изменение контрастности изображения

public Image::contrast(int $level): ImageInterface

Изменяет контраст текущего изображения на заданный уровень. Используйте значения между -100 для минимальной контрастности, 0 для отсутствия изменений и +100 для максимальной контрастности.

#Параметры

Name Type Description
level integer Уровень изменения контрастности

#Пример

use Intervention\Image\ImageManager;
use Intervention\Image\Drivers\Gd\Driver;

// создать новый экземпляр менеджера с указанным драйвером
$manager = new ImageManager(Driver::class);

// прочитать изображение
$image = $manager->read('images/example.png');

// уменьшить контраст
$image = $image->contrast(-10);

#Гамма-коррекция

public Image::gamma(float $gamma): ImageInterface

Применяет гамма-коррекцию к текущему изображению.

#Параметры

Name Type Description
gamma float Значение гамма-компенсации

#Пример

use Intervention\Image\ImageManager;

// создать новый экземпляр менеджера с указанным драйвером
$manager = ImageManager::gd();

// прочитать изображение
$image = $manager->read('images/example.jpg');

// применить гамма-коррекцию
$image = $image->gamma(1.7);

#Коррекция цвета

public Image::colorize(int $red = 0, int $green = 0, int $blue = 0): ImageInterface

Изменяет уровень интенсивности заданных значений красного, зелёного и синего цветов. Входные значения нормализуются: используйте значения от 100 для максимальной интенсивности цвета, 0 для отсутствия изменений и -100 для полного удаления данного цвета из изображения.

#Параметры

Name Type Description
red int Коррекция интенсивности всех красных цветов на изображении
green int Коррекция интенсивности всех зелёных цветов на изображении
blue int Коррекция интенсивности всех синих цветов на изображении

#Пример

use Intervention\Image\ImageManager;
use Intervention\Image\Drivers\Gd\Driver;

// создать новый экземпляр менеджера с указанным драйвером
$manager = ImageManager::withDriver(Driver::class);

// прочитать изображение
$image = $manager->read('images/example.jpg');

// придать цветам синий и зелёный оттенки
$image = $image->colorize(blue: 15, green: 10);

#Преобразовать изображение в оттенки серого

public Image::greyscale(): ImageInterface

Преобразует текущее изображение в оттенки серого.

#Пример

use Intervention\Image\ImageManager;

// создать новый экземпляр менеджера с указанным драйвером
$manager = ImageManager::imagick();

// прочитать цветное изображение
$image = $manager->read('images/example.jpg');

// преобразовать изображение в оттенки серого
$image = $image->greyscale();

#Различные эффекты

#Горизонтальное зеркалирование изображения

public Image::flop(): ImageInterface

Отзеркаливает текущее изображение по горизонтали, меняя местами левую и правую части.

#Пример

use Intervention\Image\ImageManager;
use Intervention\Image\Drivers\Imagick\Driver;

// создать новый экземпляр менеджера с указанным драйвером
$manager = new ImageManager(new Driver());

// прочитать изображение
$image = $manager->read('images/example.png');

// отразить изображение по горизонтали
$image = $image->flop();

#Вертикальное зеркалирование изображения

public Image::flip(): ImageInterface

Отзеркаливает текущее изображение по вертикали, меняя местами верхнюю и нижнюю части.

#Пример

use Intervention\Image\ImageManager;

// создать новый экземпляр менеджера с указанным драйвером
$manager = ImageManager::imagick();

// прочитать изображение
$image = $manager->read('images/example.png');

// отразить изображение по вертикали
$image = $image->flip();

#Вращение изображения

public Image::rotate(float $angle, mixed $background = 'ffffff'): ImageInterface

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

#Параметры

Name Type Description
angle float Угол поворота в градусах для поворота изображения против часовой стрелки
background mixed Цвет для заполнения появившихся областей после поворота

#Пример

use Intervention\Image\ImageManager;

// создать новый экземпляр менеджера с указанным драйвером
$manager = ImageManager::gd();

// прочитать изображение
$image = $manager->read('images/example.png');

// повернуть изображение на 45 градусов по часовой стрелке
$image = $image->rotate(-45);

#Ориентация изображения по данным Exif

public Image::orient(): ImageInterface

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

#Пример

use Intervention\Image\ImageManager;

// создать новый экземпляр менеджера без автоматической ориентации по EXIF
$manager = ImageManager::gd(autoOrientation: false);

// прочитать изображение
$image = $manager->read('images/example.jpg');

// ориентировать изображение в соответствии с данными EXIF
$image = $image->orient();

#Эффект размытия

public Image::blur(int $amount = 5): ImageInterface

Применяет гауссово размытие к текущему изображению. Используйте необязательный аргумент amount, чтобы задать силу эффекта значениями между 0 и 100.

С драйвером GD этот метод требует много ресурсов при больших значениях размытия. Используйте с осторожностью.

#Параметры

Name Type Description
amount integer Значение силы эффекта (0 - 100)

#Пример

use Intervention\Image\ImageManager;
use Intervention\Image\Drivers\Gd\Driver;

// создать новый экземпляр менеджера с указанным драйвером
$manager = new ImageManager(Driver::class);

// прочитать изображение
$image = $manager->read('images/example.png');

// применить эффект размытия
$image = $image->blur(3);

#Эффект повышения резкости

public Image::sharpen(int $amount = 10): ImageInterface

Повышает резкость текущего изображения с помощью необязательного параметра amount.

#Параметры

Name Type Description
amount integer Степень силы повышения резкости. (0 - 100)

#Пример

use Intervention\Image\ImageManager;

// создать новый экземпляр менеджера с указанным драйвером
$manager = ImageManager::imagick();

// прочитать изображение
$image = $manager->read('images/example.png');

// применить эффект повышения резкости
$image = $image->sharpen(3);

#Инвертирование цветов

public Image::invert(): ImageInterface

Инвертирует все цвета текущего изображения.

#Пример

use Intervention\Image\ImageManager;

// создать новый экземпляр менеджера с указанным драйвером
$manager = ImageManager::gd();

// прочитать изображение
$image = $manager->read('images/example.png');

// инвертировать цвета
$image = $image->invert();

#Эффект пикселизации

public Image::pixelate(int $size): ImageInterface

Применяет эффект пикселизации к текущему изображению с заданным размером пикселя.

#Параметры

Name Type Description
size integer Размер пикселей.

#Пример

use Intervention\Image\ImageManager;

// создать новый экземпляр менеджера с указанным драйвером
$manager = ImageManager::withDriver(new Driver());

// прочитать изображение
$image = $manager->read('images/example.png');

// применить эффект пикселизации
$image = $image->pixelate(12);

#Уменьшение количества цветов

public Image::reduceColors(int $limit, mixed $background = 'transparent'): ImageInterface

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

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

#Параметры

Name Type Description
limit integer Разрешённое число различных цветов
mixed background Цвет, с которым смешиваются ранее полупрозрачные цвета

#Пример

use Intervention\Image\ImageManager;

// создать новый экземпляр менеджера с указанным драйвером
$manager = ImageManager::imagick();

// прочитать изображение
$image = $manager->read('images/example.png');

// сократить число цветов до максимум 16
$image = $image->reduceColors(16);