Home >Backend Development >PHP Tutorial >Implementing equal-ratio compression of image size based on PHP, _PHP tutorial
Without further ado, I will directly post the relevant code of PHP equal compression of image size. The specific code is as follows :
<?php $im = imagecreatefromjpeg('D:\phpplace\.jpeg'); resizeImage($im,,,'xinde','.jpg'); function resizeImage($im,$maxwidth,$maxheight,$name,$filetype) { $pic_width = imagesx($im); $pic_height = imagesy($im); echo "start-----------------" ; if(($maxwidth && $pic_width > $maxwidth) && ($maxheight && $pic_height > $maxheight)) { if($maxwidth && $pic_width>$maxwidth) { $widthratio = $maxwidth/$pic_width; $resizewidth_tag = true; } if($maxheight && $pic_height>$maxheight) { $heightratio = $maxheight/$pic_height; $resizeheight_tag = true; } if($resizewidth_tag && $resizeheight_tag) { if($widthratio<$heightratio) $ratio = $widthratio; else $ratio = $heightratio; } if($resizewidth_tag && !$resizeheight_tag) $ratio = $widthratio; if($resizeheight_tag && !$resizewidth_tag) $ratio = $heightratio; $newwidth = $pic_width * $ratio; $newheight = $pic_height * $ratio; if(function_exists("imagecopyresampled")) { $newim = imagecreatetruecolor($newwidth,$newheight); imagecopyresampled($newim,$im,,,,,$newwidth,$newheight,$pic_width,$pic_height); } else { $newim = imagecreate($newwidth,$newheight); imagecopyresized($newim,$im,,,,,$newwidth,$newheight,$pic_width,$pic_height); } $name = $name.$filetype; imagejpeg($newim,$name); imagedestroy($newim); } else { $name = $name.$filetype; imagejpeg($im,$name); } }
The above code content is related to the implementation of equal-ratio compression of image size based on PHP introduced by the editor. The code is simple and easy to understand. If there is anything wrong with it, you are welcome to give your valuable opinions. The editor is very happy.