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

# Imagick::adaptiveResizeImage

(PECL imagick 2, PECL imagick 3)

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

### Описание

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

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

> Замечание: Поведение параметра `bestfit` изменили в Imagick 3.0.0. До этой версии при размерах 400 x 300 точек изображение размером 200 x 150 точек оставалось нетронутым. В Imagick 3.0.0 и более поздних версиях изображение будет масштабироваться до размера 400 x 300 точек, поскольку такой размер «больше остальных соответствует» заданным размерам. Потребуется указать как ширину, так и высоту, если задали параметр `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;
    ?>

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

- Imagick::chopImage() - Удаляет область изображения и обрезает его
- Imagick::cropImage() - Извлекает область изображения
- Imagick::magnifyImage() - Пропорционально масштабирует изображение в два раза
- Imagick::minifyImage() - Масштабирует изображение пропорционально половине его размера
- Imagick::resizeImage() - Масштабирует изображение
- Imagick::scaleImage() - Масштабирует размер изображения
- Imagick::shaveImage() - Удаляет пиксели по краям изображения
- Imagick::thumbnailImage() - Изменяет размер изображения
- Imagick::trimImage() - Удаляет края с изображения

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open