Imagick::adaptiveResizeImage

(PECL imagick 2, PECL imagick 3)

Imagick::adaptiveResizeImageAdaptively resize image with data dependent triangulation

說(shuō)明

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

Adaptively resize image with data-dependent triangulation. Avoids blurring across sharp color changes. Most useful when used to shrink images slightly to a slightly smaller "web size"; may not look good when a full-sized image is adaptively resized to a thumbnail. 此方法在Imagick基于ImageMagick 6.2.9以上版本編譯時(shí)可用。

注意: 參數(shù) bestfit 的特性在 Imagick 3.0.0 中已改變。在此版本以前,當(dāng)目標(biāo)尺寸設(shè)為 400x400 時(shí),原尺寸為 200x150 的圖像將不會(huì)被改變。自 Imagick 3.0.0 起,源圖像將會(huì)被放大到 400x300 因?yàn)檫@將更好的適合目標(biāo)尺寸。當(dāng)使用參數(shù) bestfit 時(shí),必須同時(shí)給出寬度和高度。

參數(shù)

columns

The number of columns in the scaled image.

rows

The number of rows in the scaled image.

bestfit

Whether to fit the image inside a bounding box.

返回值

成功時(shí)返回 true。

錯(cuò)誤/異常

錯(cuò)誤時(shí)拋出 ImagickException。

更新日志

版本 說(shuō)明
PECL imagick 2.1.0 Added optional fit parameter.
PECL imagick 2.1.0 This method now supports proportional scaling. Pass zero as either parameter for proportional scaling.

范例

示例 #1 Using Imagick::adaptiveResizeImage()

Resize an image to a standard size for the web. This method works best when resizing to a size only slightly smaller than the previous image size.

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

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

echo 
$image;
?>

參見(jiàn)