使用 php 保存裁剪的图像

Posted

技术标签:

【中文标题】使用 php 保存裁剪的图像【英文标题】:Saving a cropped image using php 【发布时间】:2016-01-04 20:58:17 【问题描述】:

我使用 JCrop 使用从该网站获得的代码裁剪图像: http://deepliquid.com/content/Jcrop_Implementation_Theory.html

php代码:

$targ_w = $targ_h = 150;
$jpeg_quality = 90;

$img_r = imagecreatefromjpeg($_FILES['afile']['tmp_name']);
$dst_r = ImageCreateTrueColor( $targ_w, $targ_h );

imagecopyresampled($dst_r,$img_r,0,0,$_POST['x'],$_POST['y'],
$targ_w,$targ_h,$_POST['w'],$_POST['h']);

header('Content-type: image/jpeg');
imagejpeg($dst_r, null, $jpeg_quality);

php 所做的基本上是将裁剪后的图像打印到屏幕上。

但是,我想将此图像存储在我的服务器上的uploads 文件中。通常我会使用move_uploaded_file(),但在这个特定的例子中,我不确定要为move_uploaded_file() 提供什么参数值。有人能指出我正确的方向吗?

【问题讨论】:

【参考方案1】:

然后您可以更改:

header('Content-type: image/jpeg');
imagejpeg($dst_r, null, $jpeg_quality);

进入:

imagejpeg($dst_r, 'uploads/sample-file.jpg', $jpeg_quality);

imagejpeg 的第二个参数是要保存文件的位置。当然'uploads/sample-file.jpg' 只是示例,您需要更改它以使其唯一而不覆盖其他文件

【讨论】:

这应该可以,这就是为什么我选择它作为最佳答案,但由于某种原因它不会写入我的文件夹。我不确定它是否与我使用的路径有关,有什么建议吗? 可能有。确保目录存在并且您设置了有效的权限。同时打开错误报告并检查是否有任何错误或警告

以上是关于使用 php 保存裁剪的图像的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 PHP 将裁剪后的图像保存到带有 Jcrop 的目录

如何保存裁剪的图像

上传时如何裁剪图像?

用php和zend裁剪后如何重新保存图像?

裁剪图像,然后将其保存在同一目录中

使用 php 从图像中裁剪多边形