| | |
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
Views: 4512 | Replies: 6
| Thread Tools | Search this Thread |
Tag cloud for PHP
.htaccess access ajax apache api array beginner binary broken cakephp checkbox class cms code cookies cron curl database date directory display download dynamic ebooks echo email error file files folder form forms function functions google href htaccess html image include insert integration ip java javascript joomla jquery limit link login loop mail mediawiki menu methods mlm mod_rewrite multiple mysql oop parse paypal pdf php problem query radio random recursion regex remote script search select server sessions sms soap source space speed sql stored structure subdomain syntax system table tutorial update updates upload url validation validator variable video web xml youtube





