| | |
Upload and Resize PNG and GIF images
Please support our PHP advertiser: PostgreSQL or MySQL? Compare and contrast the two most popular open source databases
![]() |
php Syntax (Toggle Plain Text)
<?php //header ("Content-type: image/jpeg"); /* JPEG / PNG Image Resizer Parameters (passed via URL): img = path / url of jpeg or png image file percent = if this is defined, image is resized by it's value in percent (i.e. 50 to divide by 50 percent) w = image width h = image height constrain = if this is parameter is passed and w and h are set to a size value then the size of the resulting image is constrained by whichever dimension is smaller Requires the PHP GD Extension Outputs the resulting image in JPEG Format By: Michael John G. Lopez - www.sydel.net Filename : imgsize.php */ //resize('images/phone.jpg','images/phone_thumb.jpg',100); function uploadpic($file,$thumb_file,$field,$thumb_width=100){ $result=false; if(is_uploaded_file($_FILES[$field]['tmp_name'])) { move_uploaded_file($_FILES[$field]['tmp_name'],$file); thumbnail($file,$thumb_file,$thumb_width); $result=true; } return $result; } function resize($orig_file,$thumb_file,$prop){ $img = $orig_file; $constrain = true; $w = $prop; $h = $prop; // get image size of img $x = @getimagesize($img); // image width $sw = $x[0]; // image height $sh = $x[1]; if ($percent > 0) { // calculate resized height and width if percent is defined $percent = $percent * 0.01; $w = $sw * $percent; $h = $sh * $percent; } else { if (isset ($w) AND !isset ($h)) { // autocompute height if only width is set $h = (100 / ($sw / $w)) * .01; $h = @round ($sh * $h); } elseif (isset ($h) AND !isset ($w)) { // autocompute width if only height is set $w = (100 / ($sh / $h)) * .01; $w = @round ($sw * $w); } elseif (isset ($h) AND isset ($w) AND isset ($constrain)) { // get the smaller resulting image dimension if both height // and width are set and $constrain is also set $hx = (100 / ($sw / $w)) * .01; $hx = @round ($sh * $hx); $wx = (100 / ($sh / $h)) * .01; $wx = @round ($sw * $wx); if ($hx < $h) { $h = (100 / ($sw / $w)) * .01; $h = @round ($sh * $h); } else { $w = (100 / ($sh / $h)) * .01; $w = @round ($sw * $w); } } } $im = @ImageCreateFromJPEG ($img) or // Read JPEG Image $im = @ImageCreateFromPNG ($img) or // or PNG Image $im = @ImageCreateFromGIF ($img) or // or GIF Image $im = false; // If image is not JPEG, PNG, or GIF if (!$im) { // We get errors from PHP's ImageCreate functions... // So let's echo back the contents of the actual image. readfile ($img); } else { // Create the resized image destination $thumb = @ImageCreateTrueColor ($w, $h); // Copy from image source, resize it, and paste to image destination @ImageCopyResampled ($thumb, $im, 0, 0, 0, 0, $w, $h, $sw, $sh); // Output resized image @ImageJPEG ($thumb,$thumb_file); } } ?>
:: xarz ::
•
•
Join Date: Dec 2008
Posts: 2
Reputation:
Solved Threads: 0
Hi, - great script -btw,
.... but
@ImageJPEG ($thumb,$thumb_file);
will create only a JPG thumb image.
If i have a PNG image file to resize (with transparent background), it will get me a JPG image as result - with black background.
I modified the function above to the one:
@ImagePNG ($thumb,$thumb_file);
but, still having a black background on the result PNG image ( I want to have the same transparent background as the initial file)..
Can you help me with that ?!
C.
.... but

@ImageJPEG ($thumb,$thumb_file);
will create only a JPG thumb image.
If i have a PNG image file to resize (with transparent background), it will get me a JPG image as result - with black background.
I modified the function above to the one:
@ImagePNG ($thumb,$thumb_file);
but, still having a black background on the result PNG image ( I want to have the same transparent background as the initial file)..
Can you help me with that ?!
C.
•
•
Join Date: Dec 2008
Posts: 2
Reputation:
Solved Threads: 0
Super. Works super !!!.
Lots of THANKS for the link !
Lots of THANKS for the link !
![]() |
Similar Threads
- Preview an image before upload (JavaScript / DHTML / AJAX)
- Resize Image + retain quality + upload to mysql database (PHP)
- image resize script errors (PHP)
- Problem with uploading images to website (PHP)
- Table aready exists (MySQL)
- how to add watermark in image (C#)
- file upload (JavaScript / DHTML / AJAX)
- Php Mysql Image Question (PHP)
Other Threads in the PHP Forum
- Previous Thread: My SQLServer 2005 with apache2triad
- Next Thread: Adding validation after form finished
| Thread Tools | Search this Thread |
apache api array auto beginner binary broken cache cakephp checkbox class cms code codingproblem cron curl customizableitems database date display dynamic echo email error file files filter folder form format forms forum function functions gc_maxlifetime global google headmethod host href htaccess html image include insert ip javascript joomla limit link login mail malfunctioning memmory memory menu mlm multiple mysql nodes oop parameter parsing paypal pdf php phpmysql popup problem query radio random recursion recursiveloop remote script search select server sessions sms snippet source space sql static syntax system table trouble tutorial up-to-date update upload url validator variable video web youtube





