public function compress_image(){
if($_POST['image']){
//Lấy đường dẫn hình
$img = $_POST['image'];
$path = $this->img_cfg['root_path'];
$mCfg = null;
//Cắt đường dẫn hình
$imgExp = explode("/", $img);
//Nếu không rỗng thì tiến hành lấy folder là avatars hoặc shares
if(!empty($imgExp)){
$objImg = new Imagick($path.$img);
if(strtolower($imgExp[1]) == 'avatars'){
$mCfg = $this->img_cfg['size']['avatar'];
} elseif(strtolower($imgExp[1]) == 'shares'){
$mCfg = $this->img_cfg['size']['share'];
}
$mCfg= array_reverse($mCfg);
foreach ($mCfg as $key => $value) {
$oSize = explode(",", $value);
$w = $oSize[0];
$h = $oSize[1];
$nName = $key.'_'.$imgExp[3];
$objImg->resizeImage($w, $h, Imagick::IMGTYPE_TRUECOLOR , 1);
$objImg->thumbnailImage($w, $h);
$objImg->setImageCompressionQuality(100);
$newPath = $path.$imgExp[0].'/'.$imgExp[1].'/'.$imgExp[2].'/'.$nName;
$objImg->writeImageFile(fopen($newPath, "wb"));
//$objImg = new Imagick($newPath);
}
$objImg->destroy();
}
}
}
Comments