PHP上传文件然后裁剪

问题描述 投票:0回答:1

我在科尔多瓦项目。 我在服务器端使用Jquery以及Jcrop插件和Php gd。 当我上传用户的头像时,我尝试裁剪图片。 上传进展顺利,但没有任何收获。

的PHP代码:

    if(move_uploaded_file($file,$dirname."/avatar.jpeg")){
        $targ_w = $targ_h = 150;
        $src =   $dirname.'/avatar.jpeg';
        $img_r = imagecreatefromjpeg($src);
        $dst_r = ImageCreateTrueColor( $targ_w, $targ_h );
        imagecopyresampled($dst_r,$img_r,0,0,$_POST['avatar_x'],$_POST['avatar_y'], $targ_w,$targ_h,$_POST['avatar_w'],$_POST['avatar_h']);
    }else{...}

我没有错误信息

php gd
1个回答
2
投票

什么都不会发生,因为您没有对结果做任何事情。 请参阅imagecopyresampled的文档

imagecopyresampled()将在src_image获取一个矩形区域,并将其放置在dst_image的矩形区域中。

运行此函数后,结果将在$dst_r ,它仍然是内存中的图像资源。 现在,您必须将其保存到文件中。 这可以通过imagejpeg函数完成 ,例如:

imagejpeg($dst_r, "$dirname/avatar_cropped.jpeg");
© www.soinside.com 2019 - 2024. All rights reserved.