PHP修改图片像素大小

PHP修改图片像素大小

作者: 夏沫

全网最全的网络资源分享网站

手机扫码查看

标签:

PHP图片像素

特别声明:文章多为网络转载,资源使用一般不提供任何帮助,特殊资源除外,如有侵权请联系!

以下为修改图片为指定像素方法及使用示例:

/**
 * @param $filename 文件名(所在路径)
 * @param $xmax 修改后最大宽度
 * @param $ymax 修改后最大高度
 * @param $ext 文件后缀
 */
function resize_image($filename, $newx, $newy, $ext)
{
    //根据后缀,由文件或 URL 创建一个新图象(内置函数)
    if($ext == "jpg" || $ext == "jpeg")
        $im = imagecreatefromjpeg($filename);
    elseif($ext == "png")
        $im = imagecreatefrompng($filename);
    elseif($ext == "gif")
        $im = imagecreatefromgif($filename);

    //获取当前待修改图片像素(内置函数)
    $x = imagesx($im);
    $y = imagesy($im);

    //新建一个真彩色图像(内置函数)
    $im2 = imagecreatetruecolor($newx, $newy);
    
    //重采样拷贝部分图像并调整大小(内置函数)
    imagecopyresampled($im2, $im, 0, 0, 0, 0, floor($newx), floor($newy), $x, $y);
    return $im2;
}


//使用示例:
$tmp = './img/test.jpg';//图片文件所在路径,相对路径和绝对路径都行
$fileinfo = pathinfo($tmp);
$ext = $fileinfo['extension'];
$image = resize_image($tmp, 1242, 2208, $ext);

if($ext == "jpg" || $ext == "jpeg")
    imagejpeg($image, $tmp);
elseif($ext == "png")
    imagepng($image, $tmp);
elseif($ext == "gif")
    imagegif($image, $tmp);

脚本执行后,将修改后的图片替换原有图片,实现逻辑可根据业务进行合理修改即可。

分享到:
打赏
未经允许不得转载:

作者: 夏沫, 转载或复制请以 超链接形式 并注明出处 夏沫点滴
原文地址: 《PHP修改图片像素大小》 发布于2020-6-26

评论

未显示?请点击刷新
切换注册

登录

您也可以使用第三方帐号快捷登录

切换登录

注册

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏