首页 >后端开发 >php教程 >如何使用 GD 在 PHP 中将上传的图像大小调整为 147x147px?

如何使用 GD 在 PHP 中将上传的图像大小调整为 147x147px?

Susan Sarandon
Susan Sarandon原创
2024-12-17 05:03:25981浏览

How Can I Resize Uploaded Images to 147x147px in PHP Using GD?

PHP中的图像缩放

案例介绍

在PHP中,您希望编写一些代码,以便通过表单上传的任何图像自动调整为147x147px。您希望通过对图像进行缩放来减小文件大小。

代码实现

为了完成此任务,您可以使用PHP的ImageMagick或GD函数来处理图像。

使用GD,可以实现以下功能:

function resize_image($file, $w, $h, $crop=FALSE) {
    list($width, $height) = getimagesize($file);
    $r = $width / $height;
    if ($crop) {
        if ($width > $height) {
            $width = ceil($width-($width*abs($r-$w/$h)));
        } else {
            $height = ceil($height-($height*abs($r-$w/$h)));
        }
        $newwidth = $w;
        $newheight = $h;
    } else {
        if ($w/$h > $r) {
            $newwidth = $h*$r;
            $newheight = $h;
        } else {
            $newheight = $w/$r;
            $newwidth = $w;
        }
    }
    $src = imagecreatefromjpeg($file);
    $dst = imagecreatetruecolor($newwidth, $newheight);
    imagecopyresampled($dst, $src, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);

    return $dst;
}

您可以调用此函数,如下所示:

$img = resize_image(‘/path/to/some/image.jpg’, 200, 200);

根据经验,GD的图像重采样确实可以显着减小文件大小,尤其是在重新采样原始数码相机图像时。

以上是如何使用 GD 在 PHP 中将上传的图像大小调整为 147x147px?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn