dezkit Posted November 5, 2008 Share Posted November 5, 2008 I have these two scripts: <?php function cropImage($nw, $nh, $source, $stype, $dest) { $size = getimagesize($source); $w = $size[0]; $h = $size[1]; switch($stype) { case 'gif': $simg = imagecreatefromgif($source); break; case 'jpg': $simg = imagecreatefromjpeg($source); break; case 'png': $simg = imagecreatefrompng($source); break; } $dimg = imagecreatetruecolor($nw, $nh); $wm = $w/$nw; $hm = $h/$nh; $h_height = $nh/2; $w_height = $nw/2; if($w> $h) { $adjusted_width = $w / $hm; $half_width = $adjusted_width / 2; $int_width = $half_width - $w_height; imagecopyresampled($dimg,$simg,-$int_width,0,0,0,$adjusted_width,$nh,$w,$h); } elseif(($w <$h) || ($w == $h)) { $adjusted_height = $h / $wm; $half_height = $adjusted_height / 2; $int_height = $half_height - $h_height; imagecopyresampled($dimg,$simg,0,-$int_height,0,0,$nw,$adjusted_height,$w,$h); } else { imagecopyresampled($dimg,$simg,0,0,0,0,$nw,$nh,$w,$h); } imagejpeg($dimg,$dest,100); ?> and I have <?php // The file $filename = 'http://www.riversidecity.ie/images/Photos/Docklands%20City.jpg'; // Set a maximum height and width $width = 80; $height = 80; // Content type header('Content-type: image/jpeg'); // Get new dimensions list($width_orig, $height_orig) = getimagesize($filename); $ratio_orig = $width_orig/$height_orig; if ($width/$height > $ratio_orig) { $width = $height*$ratio_orig; } else { $height = $width/$ratio_orig; } // Resample $image_p = imagecreatetruecolor($width, $height); $image = imagecreatefromjpeg($filename); imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig); // Output imagejpeg($image_p, null, 100); ?> How do i make a function out of the second script? Link to comment https://forums.phpfreaks.com/topic/131553-functions/ Share on other sites More sharing options...
Yesideez Posted November 5, 2008 Share Posted November 5, 2008 <?php function resize($filename,$width,$height,$type) { header($type); // Get new dimensions list($width_orig, $height_orig) = getimagesize($filename); $ratio_orig = $width_orig/$height_orig; if ($width/$height > $ratio_orig) { $width = $height*$ratio_orig; } else { $height = $width/$ratio_orig; } // Resample $image_p = imagecreatetruecolor($width, $height); $image = imagecreatefromjpeg($filename); imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig); // Output imagejpeg($image_p, null, 100); } ?> Call it like this: resize('http://www.riversidecity.ie/images/Photos/Docklands%20City.jpg',80,80,'Content-type: image/jpeg'); You might want to remove the header() line and parameter though if you want to use this after stuff has been sent to the browser. Link to comment https://forums.phpfreaks.com/topic/131553-functions/#findComment-683265 Share on other sites More sharing options...
dezkit Posted November 5, 2008 Author Share Posted November 5, 2008 noo I want to move the cropped picture to a folder after i crop the original picture. thanks so much! Link to comment https://forums.phpfreaks.com/topic/131553-functions/#findComment-683273 Share on other sites More sharing options...
trq Posted November 5, 2008 Share Posted November 5, 2008 functions. Link to comment https://forums.phpfreaks.com/topic/131553-functions/#findComment-683289 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.