PHP 8.3.4 Released!

Imagick::adaptiveResizeImage

(PECL imagick 2, PECL imagick 3)

Imagick::adaptiveResizeImageАдаптивное изменение размера изображения с данными триангуляции

Описание

public Imagick::adaptiveResizeImage(
    int $columns,
    int $rows,
    bool $bestfit = false,
    bool $legacy = false
): bool

Адаптивное изменение размера изображения с данными триангуляции. Позволяет избежать размытия через резкое изменение цвета. Чаще всего используется для уменьшения изображений чуть меньше "размера для web"; получается плохо, когда полноразмерное изображение адаптивно изменяется в миниатюру. Этот метод доступен, если Imagick был скомпилирован с версией ImageMagick 6.2.9 или старше.

Замечание: Поведение параметра bestfit было изменено в Imagick 3.0.0. До этой версии при изменении изображения размером 200 x 150 до размера 400 x 300 никаких операций не происходило. В Imagick 3.0.0 и более поздних версиях изображение будет масштабировано до размера 400 x 300, так как наиболее соответствует ("best fit") данным размерам. Если указан параметр bestfit, то ширина и высота также должны быть определены.

Список параметров

columns

Количество столбцов в масштабе изображения.

rows

Количество строк в масштабе изображения.

bestfit

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

Возвращаемые значения

В случае успешной работы возвращает true.

Ошибки

Вызывает ImagickException, если возникла ошибка.

Список изменений

Версия Описание
PECL imagick 2.1.0 Добавлен необязательный параметр подгонки.
PECL imagick 2.1.0 Метод теперь поддерживает пропорциональное масштабирование. Для этого нужно передать 0 одному из параметров.

Примеры

Пример #1 Пример использования Imagick::adaptiveResizeImage()

Изменение размеров изображения обычно используемых в web. Этот метод лучше всего работает при небольшом изменении размера.

<?php
header
('Content-type: image/jpeg');

$image = new Imagick('image.jpg');
$image->adaptiveResizeImage(1024,768);

echo
$image;
?>

Смотрите также

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top