(PECL imagick 2, PECL imagick 3)
Imagick::resizeImage — Scales an image
$columns
,$rows
,$filter
,$blur
,$bestfit
= false
,$legacy
= false
Scales an image to the desired dimensions with a filter.
注意: 參數
bestfit
的特性在 Imagick 3.0.0 中已改變。在此版本以前,當目標尺寸設為 400x400 時(shí),原尺寸為 200x150 的圖像將不會(huì )被改變。自 Imagick 3.0.0 起,源圖像將會(huì )被放大到 400x300 因為這將更好的適合目標尺寸。當使用參數bestfit
時(shí),必須同時(shí)給出寬度和高度。
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.
成功時(shí)返回 true
。
版本 | 說(shuō)明 |
---|---|
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();
}
?>