此方法适用于Dz7.2、Dx1.5版本的论坛
在UC的安装目录下找到 control 目录, 修改其中的 user.php 文件
找到:
- @unlink(UC_DATADIR.'./tmp/upload'.$uid.$filetype);
复制代码
下面加:
- //限制头像尺寸大小
- $size = GetImageSize($bigavatarfile);//获取需要处理的文件
- if($size[2] != 1) {
- $maxavatarpixel_w = 120;//限制头像尺寸像素 宽
- $maxavatarpixel_h = 200;//限制头像尺寸像素 高
- $im_from = $bigavatarfile;//创建图片来源
- $im_info = getimagesize("$im_from");//需要处理的图片的原始地址
- $im_width = $im_info["0"];//获取图片宽度
- $im_height = $im_info["1"];//获取图片高度
- $imb_width = $imb_height = 0;
- if($im_width > $maxavatarpixel_w) {
- $imb_width = $maxavatarpixel_w;
- $imb_height = intval($im_height*($maxavatarpixel_w/$im_width));
- }
- if($im_height > $maxavatarpixel_h || $imb_height > $maxavatarpixel_h) {
- $imb_width = intval($im_width*($maxavatarpixel_h/$im_height));
- $imb_height = $maxavatarpixel_h;
- if($imb_width > $maxavatarpixel_w) {
- $imb_height = intval($imb_height*($maxavatarpixel_w/$imb_width));
- $imb_width = $maxavatarpixel_w;
- }
- }
- if(!$imb_width || !$imb_height) {
- $imb_width = $im_width;
- $imb_height = $im_height;
- }
- $im_out = imagecreatetruecolor($imb_width, $imb_height);//创建一个真彩色的空白图片
-
- if($size[2] == 3) {
- $im_in = imagecreatefrompng($im_from);
- } else {
- $im_in = imagecreatefromjpeg($im_from);
- }
- imagecopyresampled($im_out, $im_in, 0, 0, 0, 0, $imb_width, $imb_height, $im_width, $im_height);//开始压缩图片
- if($size[2] == 3) {//输出图片
- imagepng($im_out, $middleavatarfile, 100);
- } else {
- imagejpeg($im_out, $middleavatarfile, 100);
- }
- chmod($middleavatarfile, 0777);
- imagedestroy($im_in);
- imagedestroy($im_out);//释放内存
- }//限制头像尺寸大小
复制代码 |
|
|
|