Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

X2.0自由修改用户头像大小

[复制链接]
Zero∥ 发表于 2011-11-23 13:38:44 | 显示全部楼层 |阅读模式
本帖最后由 Zero∥ 于 2012-1-12 19:44 编辑

一直感觉discuz默认的120*120大小的头像太小了,特别是当用户使用高度超过宽度的长方形头像时那么头像将会变得比较窄很难看,所以在找了下修改头像大小的方法。一共找到了两个
https://discuz.dismall.com/thread-2126988-1-1.html
这个是通过修改camera.swf文件来实现,效果还不错,但是缺陷就是无法自由调整头像的大小,所以我没用这方法

https://discuz.dismall.com/thread-2279729-1-1.html
这个方法是调用big类型的大头像来实现的,效果不错但是200*250的大小感觉是太大了,所以这里我做了一些修改将big类型的头像进行缩小:





找到uc_server/control/user.php


找到
  1. {
  2.                         file_exists($bigavatarfile) && unlink($bigavatarfile);
  3.                         file_exists($middleavatarfile) && unlink($middleavatarfile);
  4.                         file_exists($smallavatarfile) && unlink($smallavatarfile);
  5.                         $success = 0;
  6.                 }

  7.                 $filetype = '.jpg';
复制代码
在下面添加
  1. //{{{对头像大图处理               
  2. if($biginfo[0]>133 || $biginfo[1]>180){
  3.         if(133/180 > $biginfo[0]/$biginfo[1]){
  4.                 $_h = 180;
  5.                 $_w = $biginfo[0] * 180 / $biginfo[1];
  6.         }else{
  7.                 $_w = 133;
  8.                 $_h = $biginfo[1] * 133 / $biginfo[0];
  9.         }
  10.         $_im = imagecreatetruecolor($_w, $_h);
  11.         $_bg = imagecolorallocate($_im, 255, 255, 255);
  12.         imagefill($_im, 0, 0, $_bg);
  13.         $_im2 = imagecreatefromjpeg($bigavatarfile);
  14.         imagecopyresampled($_im, $_im2 ,0, 0, 0, 0,$_w,$_h,$biginfo[0], $biginfo[1]);
  15.         imagedestroy($_im2);
  16.         clearstatcache();
  17.         imagejpeg($_im,$bigavatarfile,100);
  18.         imagedestroy($_im);
  19. }
  20. //对头像大图处理}}}
复制代码
这里的133和180是我设置的头像的宽高,这样的大小我感觉还不错














效果感觉还不错。。。。



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

评分

3

查看全部评分

 楼主| Zero∥ 发表于 2011-11-24 15:21:49 | 显示全部楼层
changecharacter 发表于 2011-11-23 16:08
快速发帖那里的大小怎么修改呢??

template/default/forum/viewthread_fastpost.htm

找到
  1. <!--{if $_G['uid']}--><div class="avatar"><!--{echo avatar($_G['uid'])}--></div><!--{/if}-->
复制代码
改为
  1. <!--{if $_G['uid']}--><div class="avatar"><!--{echo avatar($_G['uid'],'big')}--></div><!--{/if}-->
复制代码
回复

使用道具 举报

sonpyy 发表于 2011-11-23 13:39:39 | 显示全部楼层
不错不错
回复

使用道具 举报

一起来合租 发表于 2011-11-23 13:42:48 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

changecharacter 发表于 2011-11-23 13:56:20 | 显示全部楼层
正在找这个呢。。。。
回复

使用道具 举报

shilia 发表于 2011-11-23 14:14:55 | 显示全部楼层
看后感悟了点,收下了
回复

使用道具 举报

baby--沉 发表于 2011-11-23 14:32:05 | 显示全部楼层
学习了。
回复

使用道具 举报

81336388 发表于 2011-11-23 14:35:44 | 显示全部楼层
以后真的注意了。。。 http://www.c9c9gua.com
回复

使用道具 举报

changecharacter 发表于 2011-11-23 16:08:55 | 显示全部楼层
快速发帖那里的大小怎么修改呢??
回复

使用道具 举报

丁明 发表于 2011-11-24 15:39:18 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-16 18:03 , Processed in 0.035347 second(s), 8 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表