裁剪图像中的错误在哪里?

时间:2013-03-06 20:53:50

标签: php image crop

美好的一天。

我的裁剪图片有问题。

原始图片:

original

使用代码后我会给出下一张图片:

last

裁剪图片代码:

$pathTemp = '../Images/Temp/';
$path = '../Images/';
$pathCrop = '../Images/Crop/';


if($image=='0'){die('error_image');}
if (!copy($pathTemp.$image, $path.$image)){die('error_image');}

$ext_arr = explode('.',$image);
$ext = $ext_arr[1];

$jpeg_quality = 90;
$src = $pathCrop.$image;

$img_r = imagecreatefromjpeg($src);

$dst_r = imagecreatetruecolor($_POST['w'], $_POST['h']);

imagecopyresized($dst_r,$img_r,0,0,$_POST['x1'],$_POST['y1'],170,110,$_POST['w'],$_POST['h']);

imagejpeg($dst_r,$pathCrop.time().'.jpg',$jpeg_quality);

请告诉我哪里有错误?

为什么我会收到糟糕的结局图片?

1 个答案:

答案 0 :(得分:4)

您的脚本有效,我认为您的问题是原始图片的位置。

原始图片不在$path文件夹中吗? 您正在$pathCrop文件夹中查找。

$src = $pathCrop.$image;

然后$img_r为空,因此当您将其复制到$dst_r时,您会看到黑色图像。

尝试替换

$src = $pathCrop.$image;

通过

$src = $path.$image;