>  기사  >  php教程  >  php实现批量压缩图片文件大小的脚本

php实现批量压缩图片文件大小的脚本

WBOY
WBOY원래의
2016-06-13 09:32:201135검색

今天,想上传大量图片到论坛,由于图片是单反拍的,体积较大,就写了一个脚本,批量压缩图片。

<&#63;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);
}


function write($old, $new) {
    $maxsize=1000;
    $image = new Imagick($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();
}
&#63;>

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.