www.adminn.cn
站长正能量分享网!

php gd库函数生成高清缩略图程序

AD:阿里云服务器企业会员更优惠 腾讯云香港,韩国免备案服务器1.8折优惠

gd库是php教程中一个处理图像的专用库,他可以方便快捷的处理大多数据处理,它提供了大量的图片处理函数,下面我们就利用gd库的函数来生成缩略图.

测试代码如下:

  1. <?php  
  2. include('resizeimage.php');  
  3. if(!emptyempty($_post)){  
  4. echo($filename.".jpg?cache=".rand(0,999999));  
  5. }  
  6. ?>  
  7. <form name="test" action="?submit=true" enctype="multipart/form-data" method="post" >  
  8. <input type="file" name="image" size="50" value="浏览"><p>  
  9. <input type="submit" value="上传图片">  
  10. </form>  

resizeimage.php 文件代码如下:

  1. <?php  
  2. $filename="image.thumb";  
  3. // 生成图片的宽度  
  4. $resizewidth=400;  
  5. // 生成图片的高度  
  6. $resizeheight=400; 
  7.  
  8. function resizeimage($im,$maxwidth,$maxheight,$name){  
  9. $width = imagesx($im);  
  10. $height = imagesy($im);  
  11. if(($maxwidth && $width > $maxwidth) || ($maxheight && $height > $maxheight)){  
  12. if($maxwidth && $width > $maxwidth){  
  13. $widthratio = $maxwidth/$width;  
  14. $resizewidth=true;  
  15. }  
  16. if($maxheight && $height > $maxheight){  
  17. $heightratio = $maxheight/$height;  
  18. $resizeheight=true;  
  19. }  
  20. if($resizewidth && $resizeheight){  
  21. if($widthratio < $heightratio){  
  22. $ratio = $widthratio;  
  23. }else{  
  24. $ratio = $heightratio;  
  25. }  
  26. }elseif($resizewidth){  
  27. $ratio = $widthratio;  
  28. }elseif($resizeheight){  
  29. $ratio = $heightratio;  
  30. }  
  31. $newwidth = $width * $ratio;  
  32. $newheight = $height * $ratio;  
  33. if(function_exists("imagecopyresampled")){  
  34. $newim = imagecreatetruecolor($newwidth$newheight);  
  35. imagecopyresampled($newim$im, 0, 0, 0, 0, $newwidth$newheight$width$height);  
  36. }else{  
  37. $newim = imagecreate($newwidth$newheight);  
  38. imagecopyresized($newim$im, 0, 0, 0, 0, $newwidth$newheight$width$height);  
  39. }  
  40. imagejpeg ($newim,$name . ".jpg");  
  41. imagedestroy ($newim);  
  42. }else{  
  43. imagejpeg ($im,$name . ".jpg");  
  44. }  
  45.  
  46. if($_files['image']['size']){  
  47. if($_files['image']['type'] == "image/pjpeg"){  
  48. $im = imagecreatefromjpeg($_files['image']['tmp_name']);  
  49. }elseif($_files['image']['type'] == "image/x-png"){  
  50. $im = imagecreatefrompng($_files['image']['tmp_name']);  
  51. }elseif($_files['image']['type'] == "image/gif"){  
  52. $im = imagecreatefromgif($_files['image']['tmp_name']);  
  53. }  
  54. if($im){  
  55. if(file_exists("$filename.jpg")){  
  56. unlink("$filename.jpg");  
  57. }  
  58. resizeimage($im,$resizewidth,$resizeheight,$filename);  
  59. imagedestroy ($im);  
  60. }  
  61. //开源代码phpfensi.com 
  62. ?> 

模板优惠价: (点击购买)
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《php gd库函数生成高清缩略图程序》
文章链接:https://www.adminn.cn/news/8032.html
本站资源模板仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。2021.5月起,网站调整,暂不再分享免费模板。谢谢理解

扫码支付后请联系右侧QQ发送下载地址!!

源码请勿用于任何涉灰站点!净化网络,站长更有责!

支付宝扫一扫打赏