如何在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
   // Load the png image from the local drive folder
   $img = imagecreatefromjpeg('C:\xampp\htdocs\Images\img33.jpg');

   // Crop the extra white area of an image
   $cropped = imagecropauto($img,IMG_CROP_WHITE);

   // Convert it to a gif file
   header('Content-type: image/gif');
   imagepng($cropped);
?>

输出

使用 IMG_CROP_WHITE 模式参数之前的白色侧边区域图像。

使用参数的 IMG_CROP_WHITE 模式后,从侧面裁剪白色区域。

注意 − 我们可以使用不同的给定模式参数来裁剪图像。例如,我们可以使用IMG_CROP_BLACK,它将裁剪图像的黑色部分。

更新于:2021年8月9日

1K+ 次浏览

启动您的职业生涯

通过完成课程获得认证

开始学习
广告