有没有一种方法可以使用PHP GD库裁剪出具有透明背景的未使用图像区域?

时间:2020-04-27 16:20:15

标签: php crop image-rotation php-gd

我希望能够旋转透明背景的PNG多次。我有工作代码,但是每次旋转时画布都会变大。我确实理解为什么会这样。我现在正在寻找一种删除实际图像周围未使用空间的方法,以尽可能减小图像尺寸而又不丢失图像内容。我尝试过imagecropauto,但不起作用-返回false。

<?php
    header("Content-Type: image/png");

    $src = imagecreatefrompng("image.png");
    $transparent = imagecolorallocatealpha($src, 255, 255, 255, 127);
    $rotate = imagerotate($src, 45, $transparent);
    $crop = imagecropauto($rotate, IMG_CROP_TRANSPARENT); // this doesn't work
    imagepng($crop, $filename);

    imagedestroy($src);
    imagedestroy($rotate);
    imagedestroy($crop);

有什么想法吗?

0 个答案:

没有答案