php实现批量压缩图片文件大小的脚本
今天,想上传大量图片到论坛,由于图片是单反拍的,体积较大,就写了一个脚本,批量压缩图片。
<?php if($handle=opendir('./old')){ while(false!==($file=readdir($handle))){ if($file=='.'||$file=='..'){ continue; } write('d:/wamp/www/test/old/'.$file,'d:/wamp/www/test/new/'.$file); } closedir($handle); } functionwrite($old,$new){ $maxsize=1000; $image=newImagick($old); if($image->getImageHeight()<=$image->getImageWidth()) { $image->resizeImage($maxsize,0,Imagick::FILTER_LANCZOS,1); } else { $image->resizeImage(0,$maxsize,Imagick::FILTER_LANCZOS,1); } $image->setImageCompression(Imagick::COMPRESSION_JPEG); $image->setImageCompressionQuality(90); $image->stripImage(); $image->writeImage($new); $image->destroy(); } ?>