Imagick::resizeImage
PHP Manual
PHP Manual»Imagick»Imagick::resizeImage

Imagick::resizeImage

(PECL imagick 2, PECL imagick 3)

Imagick::resizeImageScales an image

Опис

public function Imagick::resizeImage(
    int $columns,
    int $rows,
    int $filter,
    float $blur,
    bool $bestfit = false,
    bool $legacy = false
): bool

Scales an image to the desired dimensions with a filter.

Зауваження: Поведінка параметра bestfit змінилася в Imagick 3.0.0. Раніше він не діяв на зображення розмірів 400x400 та 200x150. Починаючи з Imagick 3.0.0, такі зображення отримають розмір 400x300, оскільки це "найкраще підходить" для заданих розмірів. Якщо параметр bestfit використовується, необхідно вказати як висоту, так і ширину.

Параметри

columns

Width of the image

rows

Height of the image

filter

Refer to the list of filter constants.

blur

The blur factor where > 1 is blurry, < 1 is sharp.

bestfit

Optional fit parameter.

Значення, що повертаються

Повертає true в разі успіху.

Журнал змін

Версія Опис
PECL imagick 2.1.0 Added optional fit parameter. This method now supports proportional scaling. Pass zero as either parameter for proportional scaling.

Приклади

Приклад #1 Imagick::resizeImage()

<?php
function resizeImage($imagePath, $width, $height, $filterType, $blur, $bestFit, $cropZoom) {
    //The blur factor where > 1 is blurry, < 1 is sharp.
    $imagick = new \Imagick(realpath($imagePath));

    $imagick->resizeImage($width, $height, $filterType, $blur, $bestFit);

    $cropWidth = $imagick->getImageWidth();
    $cropHeight = $imagick->getImageHeight();

    if ($cropZoom) {
        $newWidth = $cropWidth / 2;
        $newHeight = $cropHeight / 2;

        $imagick->cropimage(
            $newWidth,
            $newHeight,
            ($cropWidth - $newWidth) / 2,
            ($cropHeight - $newHeight) / 2
        );

        $imagick->scaleimage(
            $imagick->getImageWidth() * 4,
            $imagick->getImageHeight() * 4
        );
    }


    header("Content-Type: image/jpg");
    echo $imagick->getImageBlob();
}

?>

To Top