如何使用 PHP 中的 imagecropauto() 函数自动裁剪图像?
imagecropauto() 是 PHP 中的内置函数,用于使用其中一种可用模式自动裁剪图像。
语法
resource imagecropauto(resource $image, int $mode, float $threshold, int $color)
参数
imagecropauto() 有四个不同的参数 − $image、$mode、$threshold 和 $color。
$image − 指定要裁剪的图像资源。
$mode − 它是一个可选参数,用于指定与裁剪模式相对应的整数,下面是裁剪模式列表。
IMG_CROP_DEFAULT − IMG_CROP_DEFAULT 的工作方式与 IMG_CROP_TRANSPARENT 模式相同。
IMG_CROP_TRANSPARENT −此模式用于裁剪透明背景。
IMG_CROP_BLACK − 此模式用于裁剪黑色背景。
IMG_CROP_WHITE − 此模式用于裁剪白色背景。
IMG_CROP_SIDES − 此模式使用图像的四个角尝试检测要裁剪的背景。
IMG_CROP_THRESHOLD − 此模式用于使用给定的阈值和颜色裁剪图像。
$threshold −可选参数,用于指定在比较图像颜色和要裁剪的颜色时要使用的百分比容差。
$color − 可选参数,用于指定 RGB(红色、绿色和蓝色)颜色值或调色板索引。
返回值
imagecropauto() 如果成功则返回裁剪后的图像资源,如果失败则返回 false。如果裁剪的是完整图像,则 imagecrop() 函数返回 false。
示例 1
<?php // 从本地驱动器文件夹加载 png 图像 $img = imagecreatefromjpeg('C:\xampp\htdocs\Images\img33.jpg'); // 裁剪图像中多余的白色区域 $cropped = imagecropauto($img,IMG_CROP_WHITE); // 将其转换为 gif 文件 header('Content-type: image/gif'); imagepng($cropped); ?>
输出
使用 IMG_CROP_WHITE 模式参数之前,图像侧面区域为白色。
使用参数的 IMG_CROP_WHITE 模式后,从侧面裁剪白色区域。
注意 − 我们可以使用给定的不同参数模式来裁剪图像。例如,我们可以使用IMG_CROP_BLACK,它将裁剪图像的黑色部分。