首页 > 语言 > PHP > 正文

php生成缩略图代码

2024-09-04 11:44:26
字体:
来源:转载
供稿:网友
  1. <?php 
  2. # Constants 
  3. define("IMAGE_BASE"'./'); 
  4. define("MAX_WIDTH", 150); 
  5. define("MAX_HEIGHT", 150); 
  6.  
  7. # Get image locationstr_replace('..'''$_SERVER['QUERY_STRING']); 
  8. $image_file = 't.jpg'
  9. $image_path = IMAGE_BASE . "$image_file"
  10.  
  11. # Load image 
  12. $img = null; 
  13. $ext = strtolower(end(explode('.'$image_path))); 
  14. if ($ext == 'jpg' || $ext == 'jpeg') { 
  15.      $img = imagecreatefromjpeg($image_path); 
  16. else if ($ext == 'png') { 
  17.      $img = @imagecreatefrompng($image_path); 
  18. # Only if your version of GD includes GIF support 
  19. else if ($ext == 'gif') { 
  20.      $img = @imagecreatefrompng($image_path); 
  21.  
  22. # If an image was successfully loaded, test the image for size 
  23. if ($img) { 
  24.  
  25.      # Get image size and scale ratio 
  26.      $width = imagesx($img); 
  27.      $height = imagesy($img); 
  28.      $scale = min(MAX_WIDTH/$width, MAX_HEIGHT/$height); 
  29.  
  30.      # If the image is larger than the max shrink it 
  31.      if ($scale < 1) { 
  32.          $new_width =150; //floor($scale*$width); 
  33.          $new_height =150;// floor($scale*$height); 
  34.  
  35.          # Create a new temporary image 
  36.          $tmp_img = imagecreatetruecolor($new_width$new_height); 
  37.  
  38.          # Copy and resize old image into new image 
  39.          imagecopyresized($tmp_img$img, 0, 0, 0, 0,$new_width$new_height$width$height); 
  40.          imagedestroy($img); 
  41.          $img = $tmp_img
  42.      } 
  43.  
  44. # Create error image if necessary 
  45. if (!$img) { 
  46.      $img = imagecreate(MAX_WIDTH, MAX_HEIGHT); 
  47.      imagecolorallocate($img,0,0,0); 
  48.      $c = imagecolorallocate($img,70,70,70 ); 
  49.      imageline($img,0,0,MAX_WIDTH,MAX_HEIGHT,$c2); 
  50.      imageline($img,MAX_WIDTH,0,0,MAX_HEIGHT,$c2); 
  51. }//开源代码Vevb.com 
  52.  
  53. # Display the image 
  54. header("Content-type: image/jpeg"); 
  55. imagejpeg($img); 
  56. imagedestroy($img); 
  57. ?> 

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表