1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
$folder = 'o caminho da pasta de imagens'; $files = scandir($folder); function check_transparent($im) { $width = imagesx($im); $height = imagesy($im); for($i = 0; $i < $width; $i++) { for($j = 0; $j < $height; $j++) { $rgba = imagecolorat($im, $i, $j); if(($rgba & 0x7F000000) >> 24) { return true; } } } return false; } function compress_image($source_url, $destination_url, $quality) { $info = getimagesize($source_url); if ($info['mime'] == 'image/jpeg'){ $image = imagecreatefromjpeg($source_url); }elseif($info['mime'] == 'image/gif'){ $image = imagecreatefromgif($source_url); if(check_transparent($image)) { return $source_url; } }elseif ($info['mime'] == 'image/png'){ $image = imagecreatefrompng($source_url); if(check_transparent($image)) { return $source_url; } } imagejpeg($image, $destination_url, $quality); return $destination_url; } foreach($files as $file){ $ex = end(explode('.',$file)); if($ex == 'jpg' || $ex == 'gif' || $ex == 'png'){ echo compress_image($folder.'/'.$file,$folder.'/'.$file,70); echo '<br>'; } } |