Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用PHP创建裁剪的缩略图?_Php_Jquery_Image_Thumbnails - Fatal编程技术网

如何使用PHP创建裁剪的缩略图?

如何使用PHP创建裁剪的缩略图?,php,jquery,image,thumbnails,Php,Jquery,Image,Thumbnails,我在这里尝试创建一个界面来加载图像,然后选择这个图像的区域来保存裁剪后的缩略图和原始图像。 要选择裁剪区域,我使用jquery.Jcrop插件,乍一看效果很好。 然后,我将相关的x-y宽度高度数据发布到我的php脚本中,并尝试使用以下代码行保存缩略图: $source = imagecreatefromjpeg(UPLOADED_IMAGE); $target = imagecreatetruecolor(TWIDTH, THEIGHT); imagecopyresampled($target

我在这里尝试创建一个界面来加载图像,然后选择这个图像的区域来保存裁剪后的缩略图和原始图像。 要选择裁剪区域,我使用jquery.Jcrop插件,乍一看效果很好。 然后,我将相关的x-y宽度高度数据发布到我的php脚本中,并尝试使用以下代码行保存缩略图:

$source = imagecreatefromjpeg(UPLOADED_IMAGE);
$target = imagecreatetruecolor(TWIDTH, THEIGHT);

imagecopyresampled($target,$source,0,0,$_POST['x'],$_POST['y'],
    TWIDTH,THEIGHT,$_POST['w'],$_POST['h']);

imagejpeg($target, FINAL_THUMBNAIL_DIRECTORY.$targetFile, 100);
为确保所有数据正确,请执行以下操作:

$imageSize =  getimagesize(UPLOADED_IMAGE);
echo UPLOADED_IMAGE . "\n";
echo $imageSize[0] . "x" . $imageSize[1] . "\n";
echo TWIDTH . "x" . THEIGHT . "\n";
echo $_POST['x'] . "x" . $_POST['y'] . " - " . $_POST['w'] . "x" . $_POST['h'] . "\n";
echo FINAL_THUMBNAIL_DIRECTORY.$targetFile . "\n";
exit();
正如您在警报窗口中的php脚本的这个图像结果中所看到的,在我的脚本中传递的所有变量都是有效的。上传的图片在那里,可通过此链接获得,但最终保存的图片是200x150和纯黑色


什么可能导致此问题?虽然我不是一名php程序员,但我已经围绕这个问题运行了几天,代码看起来非常简单

可能与您的要求不同,但请尝试使用imagemagick而不是GDM。这个问题是针对方形缩略图的。不管怎样,我的代码是一样的,但仍然不起作用。也许有人会帮我找到difference@rooobertek,谢谢,我会调查的。但我还是想知道我做错了什么: