在线工具 | 热点资讯 | 网站目录 | 简繁转换 | 英语单词
查询

Imagick::resizeImage()函数—用法及示例

「 调整图像的大小 」


函数名:Imagick::resizeImage()

适用版本:Imagick类在Imagick扩展版本2.0.0及以上可用。

用法: Imagick::resizeImage()函数用于调整图像的大小。它可以根据指定的宽度和高度来缩放图像,并且可以选择保持原始图像的宽高比例。

语法: bool Imagick::resizeImage(int $width, int $height, int $filter, float $blur, bool $bestfit = FALSE)

参数:

  • $width: 新图像的宽度,可以为0,表示根据给定的高度等比例缩放图像。
  • $height: 新图像的高度,可以为0,表示根据给定的宽度等比例缩放图像。
  • $filter: 缩放时使用的滤波器类型,可以是以下常量之一:
    • Imagick::FILTER_UNDEFINED: 未定义滤波器。
    • Imagick::FILTER_POINT: 最近邻像素值滤波器。
    • Imagick::FILTER_BOX: 盒式滤波器。
    • Imagick::FILTER_TRIANGLE: 三角滤波器。
    • Imagick::FILTER_HERMITE: Hermite滤波器。
    • Imagick::FILTER_HANNING: Hanning滤波器。
    • Imagick::FILTER_HAMMING: Hamming滤波器。
    • Imagick::FILTER_BLACKMAN: Blackman滤波器。
    • Imagick::FILTER_GAUSSIAN: Gaussian滤波器。
    • Imagick::FILTER_QUADRATIC: Quadratic滤波器。
    • Imagick::FILTER_CUBIC: Cubic滤波器。
    • Imagick::FILTER_CATROM: Catrom滤波器。
    • Imagick::FILTER_MITCHELL: Mitchell滤波器。
    • Imagick::FILTER_LANCZOS: Lanczos滤波器。
    • Imagick::FILTER_BESSEL: Bessel滤波器。
    • Imagick::FILTER_SINC: Sinc滤波器。
  • $blur: 模糊参数,可以为0,表示不进行模糊操作。
  • $bestfit: 是否保持原始图像的宽高比例,默认为FALSE,设置为TRUE时会强制保持宽高比例。

返回值: 如果调整图像大小成功,则返回TRUE,否则返回FALSE。

示例:

// 创建Imagick对象
$image = new Imagick('image.jpg');

// 调整图像大小为300x200,使用三角滤波器,模糊参数为0.5
$result = $image->resizeImage(300, 200, Imagick::FILTER_TRIANGLE, 0.5);

if ($result) {
    // 保存调整后的图像
    $image->writeImage('resized_image.jpg');
    echo '图像大小调整成功!';
} else {
    echo '图像大小调整失败!';
}

// 销毁Imagick对象
$image->destroy();

上述示例中,我们首先创建了一个Imagick对象,加载了名为'image.jpg'的图像文件。然后调用resizeImage()函数将图像大小调整为300x200,使用三角滤波器,并设置模糊参数为0.5。最后,我们保存调整后的图像为'resized_image.jpg',并输出相应的成功或失败信息。最后,记得销毁Imagick对象以释放资源。

补充纠错
上一个函数: Imagick::rollImage()函数
下一个函数: Imagick::resetImagePage()函数
热门PHP函数
分享链接