[发明专利]一种自适应用户头像填充方法和系统有效
申请号: | 202010991569.4 | 申请日: | 2020-09-21 |
公开(公告)号: | CN111832269B | 公开(公告)日: | 2020-12-08 |
发明(设计)人: | 周立新 | 申请(专利权)人: | 湖南惟楚有才教育科技有限公司 |
主分类号: | G06F40/174 | 分类号: | G06F40/174;G06F40/106 |
代理公司: | 长沙鑫泽信知识产权代理事务所(普通合伙) 43247 | 代理人: | 刁飞 |
地址: | 410000 湖南省长沙市高新开发区麓*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 自适应 用户 头像 填充 方法 系统 | ||
1.一种自适应用户头像填充方法,其特征在于,所述方法包括:
步骤1,判断接口返回的用户头像地址是否为空,如果不为空,则进入步骤2,如果为空,则进入步骤7;
步骤2,判断是否有图片已经存在缓存中,如果已经存在缓存中,则采用缓存中的图片进行用户头像填充,如果不存在缓存图片,则进入步骤3;
步骤3,请求用户头像地址的图片,如果请求失败,则进入步骤4,如果请求成功,则进入步骤5;
步骤4,判断是否传入用户名参数,如果有用户名,则进入步骤6,如果没有用户名,则进入步骤8;
步骤5,采用图片缓存方法将请求成功的图片缓存入内存中,并返回至步骤2;
步骤6,基于用户名参数并结合头像图片生成算法生成对应的文字图片,并采用生成的文字图片进行用户头像填充;所述步骤6的头像图片生成算法,具体包括:
步骤6-1,定义几种颜色作为随机使用的底色,针对用户名参数的字符串进行哈希计算得到对应的哈希值,并将所述哈希值除以颜色的数量取余的绝对值来确定所述字符串对应的颜色;
步骤6-2,绘制出该颜色对应的纯色图片;
步骤6-3,在所述纯色图片中心绘制需要显示的文本,具体的,在纯色图片中绘制需要显示的文本时,用UIGraphics进行2D图像渲染,调用UIGraphicsBeginImageContextWithOptions函数获得用来处理图片的图形上下文,利用该图形上下文,在所述纯色图片上进行文本绘图,并生成文字图片;待绘图操作完成后,调用UIGraphicsEndImageContext函数关闭图形上下文,其中需要显示的文本遵循显示文本的筛选规则;
步骤7,判断接口返回的用户名是否为空,如果为空,则进入步骤8,如果不为空,则返回步骤6;
步骤8,采用缺省头像图片进行用户头像填充。
2.根据权利要求1所述的自适应用户头像填充方法,其特征在于,所述显示文本的筛选规则具体表征为:
如果用户名参数的字符串中含有字母,则取所述字符串中的前两个字符进行显示;
如果用户名参数的字符串中不含字母,若所述字符串长度为1,则取一个字符进行显示;若所述字符串长度为2,则取两个字符进行显示;若所述字符串长度为3或4,则取后两个字符进行显示;若所述字符串长度超过4,则取前两个字符进行显示。
3.根据权利要求1所述的自适应用户头像填充方法,其特征在于,所述步骤5的图片缓存方法,具体包括:
步骤5-1,通过UIImageView+WebCache类进行图片加载,并在入口setImageWithURL:placeholderImage:options先把默认图片placeholderImage显示,然后由SDWebImageManager类根据URL开始处理图片;
步骤5-2,进入SDWebImageManager类中downloadWithURL:delegate:options:userInfo,并通过SDImageCache类从缓存中查找图片是否已经下载queryDiskCacheForKey:delegate:userInfo;
步骤5-3,先从内存缓存中查找是否有图片,如果内存中已经有图片缓存,则SDImageCacheDelegate回调imageCache:didFindImage:forKey:userInfo到SDWebImageManager类中;
步骤5-4,SDWebImageManagerDelegate回调webImageManager:didFinishWithImage到UIImageView+WebCache类中,以等待前端展示图片;
步骤5-5,如果内存中没有图片缓存,则生成“NSOperation”添加到任务队列中,并开始从硬盘中查找图片是否已经缓存;
步骤5-6,根据URL的MD5值Key在硬盘缓存目录下尝试读取图片文件;
步骤5-7,如果从硬盘读取到了图片,则将图片添加到内存缓存中,SDImageCacheDelegate回调imageCache:didFindImage:forKey:userInfo到UIImageView+WebCache类中,以等待前端展示图片。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖南惟楚有才教育科技有限公司,未经湖南惟楚有才教育科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010991569.4/1.html,转载请声明来源钻瓜专利网。