如果没有找到您需要的插件,欢迎 QQ咨询定制插件!
在给客户做网站的时候,经常告诉客户说发布文章的图片要处理下再上传,但是往往客户都觉得一张张图片修改起来太麻烦了(其实我也觉得一张张图片修改,实在太麻烦了),不听劝告,经常上传的是相机或者手机拍摄的原图,这样不仅占用网站空间,而且也会严重影响到网站打开速度!
今天就为大家分享dedecms怎么实现图片过大就自动等比例压缩的方法!
dedecms图片自动缩小插件(等比例压缩)
一、首先在后台基本参数添加2个字段 :cfg_imgresize,cfg_maxwidth ,相关设置如下:
如果觉得操作太麻烦的话,请点击这里下载懒人包,密码: p68c解压到网站根目录覆盖即可!(这是utf8版的哦!GBK请自行转换!)
二、打开 include/dialog/select_images_post.php 大约63行找到 move_uploaded_file($imgfile, $fullfilename) or die("上传文件到 $fullfilename 失败!"); ! 后面添加
$imgw=getimagesize($fullfilename); if($cfg_imgresize=='Y'&&$imgw[0]>$cfg_maxwidth){ ImageResize2($fullfilename,$cfg_maxwidth); }
保存!
三、打开 include/helpers/image.helper.php 在最后面添加
/** *图片等比例缩小,来源支持bmp、gif、jpg、png *但生成的小图只用jpg或png格式 * *@accesspublic *@paramstring$srcFile图片路径 *@paramstring$toW最大宽度,超出自动缩放为此宽度 *@paramstring$toFile输出文件到 *@returnstring */ if(!function_exists('ImageResize2')) { functionImageResize2($srcFile,$toW,$toFile="") { global$cfg_photo_type; if($toFile=='')$toFile=$srcFile; $info=''; $srcInfo=GetImageSize($srcFile,$info); switch($srcInfo[2]) { case1: if(!$cfg_photo_type['gif'])returnFALSE; $im=imagecreatefromgif($srcFile); break; case2: if(!$cfg_photo_type['jpeg'])returnFALSE; $im=imagecreatefromjpeg($srcFile); break; case3: if(!$cfg_photo_type['png'])returnFALSE; $im=imagecreatefrompng($srcFile); break; case6: if(!$cfg_photo_type['bmp'])returnFALSE; $im=imagecreatefromwbmp($srcFile); break; } $srcW=ImageSX($im); $srcH=ImageSY($im); if($srcW$toW) { if(function_exists("imagecreateTRUEcolor")) { @$ni=imagecreateTRUEcolor($ftoW,$ftoH); if($ni) { imagecopyresampled($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH); } else { $ni=imagecreate($ftoW,$ftoH); imagecopyresized($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH); } } else { $ni=imagecreate($ftoW,$ftoH); imagecopyresized($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH); } switch($srcInfo[2]) { case1: imagegif($ni,$toFile); break; case2: imagejpeg($ni,$toFile,100); break; case3: imagepng($ni,$toFile); break; case6: imagebmp($ni,$toFile); break; default: returnFALSE; } imagedestroy($ni); } imagedestroy($im); returnTRUE; } }
就可以实现 dedecms图片自动缩小插件(等比例压缩)!
这样就再也不用担心上传的图片太大了!也不用很麻烦的一张张手动修改了!
如果要上传超过设置的宽度的大图的话,请到基本参数关闭 “图片等比例缩小”,设置为 否,保存即可! 或者使用FTP等工具上传!