用于快速图片处理的方法及装置的制造方法

文档序号:9397483阅读:164来源:国知局
用于快速图片处理的方法及装置的制造方法
【技术领域】
[0001]本申请涉及电子信息技术领域,具体地说,涉及一种用于快速图片处理的方法及
目.0
【背景技术】
[0002]随着终端的使用日益广泛,人们利用终端可以运行各种应用,例如微博、社交软件、通讯、理财、生活、游戏等等,在这些即时通讯应用中,不可缺的一个重要功能是:应用所涉及的图片的处理及显示。尤其是随着人们审美水平的提高,图片的呈现形式也将很大程度影响用户对于相应应用程序的体验。另一方面,由于例如通讯类应用的即时性,客户端设备需要能够实时完成对应的图片处理。现有的一些应用,例如微信、QQ虽然对其通讯录列表涉及的图片显示进行了一定程度的处理,然而其绘制速度还有待进一步提高。
[0003]当前基于安卓操作系统的移动客户端的应用开发通常采用的是网上开源的项目Afinal框架,其特点是小巧灵活,代码入侵量少。然而其原有功能相对较少,目前没有提供开发者所期待的快速图片处理功能,所以尚需对功能进行优化以为用户提供优质体验的具有快速图片处理能力的应用。

【发明内容】

[0004]有鉴于此,本申请所要解决的技术问题是提供了一种用于快速图片处理的方法及装置,其能够解决当前移动客户端图片处理速度慢的问题。
[0005]为了解决上述技术问题,本申请有如下技术方案:
[0006]一种用于快速图片处理的方法,该方法包括:基于待处理图片的唯一标识依次从软引用类、本地存储器以及外部网络进行对所述待处理图片的三级加载,其中,仅在前一级加载失败的情况下启动下一级的加载,并将该下一级加载的所述待处理图片添加到前级对应的存储空间中,最终将所述待处理图片加载至第一级对应的存储空间中;对加载成功的所述待处理图片进行预先读取以获取所述待处理图片的尺寸,设置合适的尺寸并基于所述合适的尺寸进行对该待处理图片的实际读取;基于实际读取的图片信息将该待处理图片绘制为具有目标特性的目标图片。
[0007]—种用于快速图片处理的装置,该装置包括:加载模块,用于基于待处理图片的唯一标识依次从软引用类、本地存储器以及外部网络进行对所述待处理图片的三级加载,其中,仅在前一级加载失败的情况下启动下一级的加载,并将该下一级加载的所述待处理图片添加到前级对应的存储空间中,最终将所述待处理图片加载至第一级对应的存储空间中;读取模块,用于对加载成功的所述待处理图片进行预先读取以获取所述待处理图片的尺寸,设置合适的尺寸并且基于所述合适的尺寸进行对该待处理图片的实际读取;绘制模块,用于基于实际读取的图片信息将该待处理图片绘制为具有目标特性的目标图片。
[0008]与现有技术相比,本申请所述的方法和系统,达到了如下效果:
[0009]第一,本发明能够按照特定的顺序加载待处理图片,仅在前一级加载失败的情况下才启动下一级的加载,从而优先从易用的存储位置加载图片而避免了不必要的加载时延。
[0010]第二,本发明对待处理图片进行预先读取而先获得图片尺寸,再按照期望的尺寸进行实际的图片读取,从而避免消耗多余的系统资源进行图片导入,尤其是在原图片尺寸较大的情况下,本发明的优势愈加明显。
[0011]第三,本发明基于按照合适的尺寸读取的图片进行图片绘制,避免了绘制之后还需重新调整图片尺寸以适应应用需要的问题,加速完成了图片处理过程,提高了运行效率。
【附图说明】
[0012]此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0013]图1为本发明的所述一种用于快速图片处理的方法流程图;以及
[0014]图2为本发明的所述一种用于快速图片处理的装置结构示意图。
【具体实施方式】
[0015]如在说明书及权利要求当中使用了某些词汇来指称特定组件。本领域技术人员应可理解,硬件制造商可能会用不同名词来称呼同一个组件。本说明书及权利要求并不以名称的差异来作为区分组件的方式,而是以组件在功能上的差异来作为区分的准则。如在通篇说明书及权利要求当中所提及的“包含”为一开放式用语,故应解释成“包含但不限定于”。“大致”是指在可接收的误差范围内,本领域技术人员能够在一定误差范围内解决所述技术问题,基本达到所述技术效果。此外,“耦接”一词在此包含任何直接及间接的电性耦接手段。因此,若文中描述一第一装置耦接于一第二装置,则代表所述第一装置可直接电性耦接于所述第二装置,或通过其他装置或耦接手段间接地电性耦接至所述第二装置。说明书后续描述为实施本申请的较佳实施方式,然所述描述乃以说明本申请的一般原则为目的,并非用以限定本申请的范围。本申请的保护范围当视所附权利要求所界定者为准。
[0016]实施例1
[0017]参见图1所示为本申请所述一种用于快速图片处理的方法的具体实施例,本实施例中所述方法包括以下步骤:
[0018]步骤101、基于待处理图片的唯一标识依次从软引用类、本地存储器以及外部网络进行对所述待处理图片的三级加载;
[0019]步骤102、对加载成功的所述待处理图片进行预先读取以获取所述待处理图片的尺寸,设置合适的尺寸并基于所述合适的尺寸进行对该待处理图片的实际读取;
[0020]步骤103、基于实际读取的图片信息将该待处理图片绘制为具有目标特性的目标图片;
[0021]步骤101中,仅在前一级加载失败的情况下启动下一级的加载,并将该下一级加载的所述待处理图片添加到前级对应的存储空间中,最终将所述待处理图片加载至第一级对应的存储空间中。值得注意的是,本发明是按照对存储空间中内容的加载的易用程度进行三级排序的,其中前一级的易用程度高于后一级的易用程度,例如对软引用类中内容的加载易于本地存储器,对本地存储器中内容的加载又易于外部网络。
[0022]上述步骤中涉及的软引用类例如可以实现为Cache (快速缓冲贮存区)工具类,并且对于该类采用软引用机制,具体地,先向系统开辟一块内存空间以供使用,如果所使用的空间超出开辟出来的内存空间,则在新数据放入到该类中时,释放掉原有的数据,并将新的数据置入。另一方面,本地存储器例如可以实现为本地的SD卡等存储介质。
[0023]在一个较具体的示例中,在进行图片处理之前可以先获取待处理的图片的唯一 ID标识。根据其唯一 ID标识,先查询软引用类中,该图片是否存在;如果存在则显示该图片,如果没有则查询本地SD卡是否有该图片存在。如果本地SD卡中图片存在,则加载本地图片到软引用类中,并将图片显示;如果本地SD卡中没有该图片,则先从外部网络下载到本地SD卡中。图片名称也用图片原来的ID标识,以方便以后查找。然后加载本地SD卡中的图片,将其添加到软引用类中,并从软引用类中将图片进行显示。
[0024]在完成图片加载之后,先对图片的大小/尺寸进行预先读取,然后设置合适的图片尺寸进行实际的图片数据读取。例如,对于具体需要使用该图片的显示控件而言,只需要小尺寸的图片用于显示,那么在加载的图片较大的情况下并没有必要进行全尺寸的读取。合适的图片尺寸可以基于具体的显示需求而定,而无须是一个固定的数值。然后通过画布对图片进行处理,例如期望的图片的目标特性为圆形的情况下进行描边,做圆,以获得圆形的目标图片。其中,目标特性可以是通过开发者预先配置的,例如关于图片边缘的形状类型如圆形、椭圆形、多边形等,还可以更具体的例如圆角等参数。此外,在一些优选的示例中,目标特性还可以包括例如边框类型、背景等,相应地,可以对待处理了图片按照指定的边框进行加边框以及背景相关的绘制。之后,可以将目标图片缓存到Cach
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1