how to save cropped image
10,765
Try this:
imagejpeg($dst_r, 'yourfilename.jpg', $jpeg_quality);
// Remove from memory - don't forget this part
imagedestroy($dst_r);
More info http://www.php.net/manual/en/function.imagejpeg.php
Author by
galtech.Mariya
Updated on June 09, 2022Comments
-
galtech.Mariya almost 2 years
Downloaded the code for cropping image from the following link:
http://deepliquid.com/content/Jcrop.html
This is the code in crop.php page:
<?php /** * Jcrop image cropping plugin for jQuery * Example cropping script * @copyright 2008-2009 Kelly Hallman * More info: http://deepliquid.com/content/Jcrop_Implementation_Theory.html */ if ($_SERVER['REQUEST_METHOD'] == 'POST') { $targ_w = $targ_h = 150; $jpeg_quality = 90; $src = 'demo_files/pool.jpg'; $img_r = imagecreatefromjpeg($src); $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); exit; } // If not a POST request, display page below: ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> <script src="js/jquery.min.js"></script> <script src="js/jquery.Jcrop.js"></script> <link rel="stylesheet" href="css/jquery.Jcrop.css" type="text/css" /> <script language="Javascript"> $(function(){ $('#cropbox').Jcrop({ aspectRatio: 1, onSelect: updateCoords }); }); function updateCoords(c) { $('#x').val(c.x); $('#y').val(c.y); $('#w').val(c.w); $('#h').val(c.h); }; function checkCoords() { if (parseInt($('#w').val())) return true; alert('Please select a crop region then press submit.'); return false; }; </script> </head> <body> <!-- This is the image we're attaching Jcrop to --> <img src="demo_files/pool.jpg" id="cropbox" /> <!-- This is the form that our event handler fills --> <form action="crop.php" method="post" onsubmit="return checkCoords();"> <input type="hidden" id="x" name="x" /> <input type="hidden" id="y" name="y" /> <input type="hidden" id="w" name="w" /> <input type="hidden" id="h" name="h" /> <input type="submit" value="Crop Image" /> </form> </body> </html>
The cropping is done perfectly and displayed the cropped image successfully.
But i want to save the cropped image into a directory .
How can i do this?
-
Josh almost 12 yearsHave you read the manual on
imagejpeg
? Change the second parameter fromnull
to the desired filename. -
Prasenjit Kumar Nag almost 12 years+1 @Josh, do it like this
ImageJpeg($dst_r, 'images/' . 'Desired_name';
To save the file intoimages
directory. Read more here php.net/manual/en/function.imagejpeg.php -
galtech.Mariya almost 12 years@Joy,I changed the code as
imagejpeg($dst_r,'crop_images/',$jpeg_quality);
.Then i got this errorThe image “http://localhost/crop/index.php” cannot be displayed because it contains errors.
-
Prasenjit Kumar Nag almost 12 years@galtech.Mariya, Do you still want to show the image, if you do you Can Just link to the newly saved image from images dir. Remove the
header('Content-type: image/jpeg');
It will remove the error. -
galtech.Mariya almost 12 years+1@Joy,ok i got my mistake , only put the disrectory path not included the name of the image
-