当前位置:首页 > PHP教程 > php图像处理 > 列表

基于PHP实现等比压缩图片大小

发布:smiling 来源: PHP粉丝网  添加日期:2021-07-13 11:01:51 浏览: 评论:0 

通过本段代码给大家介绍基于php实现等比压缩图片大小的相关知识,代码简单易懂,对php压缩图片相关知识感兴趣的朋友参考下吧。

废话不多说了,直接给大家贴php等比压缩图片大小的相关代码了,具体代码如下所示:

  1. <?php 
  2. $im = imagecreatefromjpeg('D:\phpplace\.jpeg'); 
  3. resizeImage($im,,,'xinde','.jpg'); 
  4. function resizeImage($im,$maxwidth,$maxheight,$name,$filetype
  5. $pic_width = imagesx($im); 
  6. $pic_height = imagesy($im); 
  7. echo "start-----------------" ; 
  8. if(($maxwidth && $pic_width > $maxwidth) && ($maxheight && $pic_height > $maxheight)) 
  9. if($maxwidth && $pic_width>$maxwidth
  10. $widthratio = $maxwidth/$pic_width
  11. $resizewidth_tag = true; 
  12. if($maxheight && $pic_height>$maxheight
  13. $heightratio = $maxheight/$pic_height
  14. $resizeheight_tag = true; 
  15. if($resizewidth_tag && $resizeheight_tag
  16. if($widthratio<$heightratio
  17. $ratio = $widthratio
  18. else 
  19. $ratio = $heightratio
  20. if($resizewidth_tag && !$resizeheight_tag
  21. $ratio = $widthratio
  22. if($resizeheight_tag && !$resizewidth_tag
  23. $ratio = $heightratio
  24. $newwidth = $pic_width * $ratio
  25. $newheight = $pic_height * $ratio
  26. if(function_exists("imagecopyresampled")) 
  27. $newim = imagecreatetruecolor($newwidth,$newheight); 
  28. imagecopyresampled($newim,$im,,,,,$newwidth,$newheight,$pic_width,$pic_height); 
  29. else 
  30. $newim = imagecreate($newwidth,$newheight); 
  31. imagecopyresized($newim,$im,,,,,$newwidth,$newheight,$pic_width,$pic_height); 
  32. $name = $name.$filetype
  33. imagejpeg($newim,$name); 
  34. imagedestroy($newim); 
  35. else 
  36. $name = $name.$filetype
  37. imagejpeg($im,$name); 
  38. }  

以上代码内容是小编给大家介绍的基于PHP实现等比压缩图片大小的相关内容,代码简单易懂,哪里写的不好,欢迎各位大侠多多提出宝贵意见,小编非常乐意。

Tags: PHP等比压缩图片大小

分享到: