PHP:使用php裁剪时的黑色图像

Fra*_*sco 2 php

我设置了一个scritp,上传一个jpeg,然后用缩略图裁剪它,但有些用户体验到黑色图像,说实话,我不知道他们上传了什么,也许是一个与php库不兼容的jpeg jpeg?

这是我的简单代码...当我尝试使用我的照片时,eveything工作正常,所以我不能理解为什么有些用户将黑色图像作为缩略图...

$img_r = imagecreatefromjpeg($src); 
$dst_r = ImageCreateTrueColor($targ_w, $targ_h);
imagecopyresampled($dst_r,$img_r,0,0,$x,$y,$targ_w,$targ_h, $w, $h);    
imagejpeg($dst_r, $output_filename, $jpeg_quality);
Run Code Online (Sandbox Code Playgroud)

更新:我发现了这个错误:基本上当用户尝试上传一个文件的图像时,它会占据空间%20 ...所以我将这个名字从javascriptajax调用传递给a的方式有问题php中的脚本... aargg..so哑

Xeo*_*oss 5

有时,当裁剪尝试将图像移动到图像外部的位置时,您会变黑.

_________
|       |
|       | ____
|  0_o  | |  |
|   |   | |__|
|_______|
Run Code Online (Sandbox Code Playgroud)

检查图像内部的宽度,高度和x/y偏移是否是正确的数字,并且数学运算不会将它们移动到图像区域的外部.