使用 PHP 保存裁剪后的图像
Posted
技术标签:
【中文标题】使用 PHP 保存裁剪后的图像【英文标题】:save cropped image with PHP 【发布时间】:2014-02-18 10:35:57 【问题描述】:我有这个裁剪图像的脚本。如何保存到服务器?
move_uploaded_file($_FILES["file"]["tmp_name"],
"pictures/" . $_FILES["file"]["name"]);
$imgSrc = 'pictures/' . $_FILES["file"]["name"];
//getting the image dimensions
list($width, $height) = getimagesize($imgSrc);
//saving the image into memory (for manipulation with GD Library)
$myImage = imagecreatefromjpeg($imgSrc);
// calculating the part of the image to use for thumbnail
if ($width > $height)
$y = 0;
$x = ($width - $height) / 2;
$smallestSide = $height;
else
$x = 0;
$y = ($height - $width) / 2;
$smallestSide = $width;
// copying the part into thumbnail
$thumbSize = 100;
$thumb = imagecreatetruecolor($thumbSize, $thumbSize);
imagecopyresampled($thumb, $myImage, 0, 0, $x, $y, $thumbSize, $thumbSize, $smallestSide, $smallestSide);
//final output
header('Content-type: image/jpeg');
imagejpeg($thumb);
如您所见,我能够输出图像。但是我无法保存它。在此先感谢:)
【问题讨论】:
我想在裁剪后保存任何类型的图像。所以基本上最后需要保存的是$thumb变量。 【参考方案1】:尝试提供第二个参数,第二个参数将文件名作为参数并保存在指定路径中
imagejpeg($thumb, 'filename');
例子
imagejpeg($thumb, 'uploads/yourfilename.jpg');
【讨论】:
请提供一些解释。对学习者大有裨益!【参考方案2】:使用http://nl1.php.net/move_uploaded_file保存文件
move_uploaded_file($_FILES['file']['tmp_name'], "dir/".$_FILES['file']['name']);
或使用 imagejpeg,但你必须坚持使用 jpeg。
【讨论】:
以上是关于使用 PHP 保存裁剪后的图像的主要内容,如果未能解决你的问题,请参考以下文章
我只想将裁剪后的图像保存到图库中。但它保存了原始的完整图像。如何只保存裁剪的图像?