一种图片压缩方法及装置制造方法及图纸

技术编号:16043161 阅读:39 留言:0更新日期:2017-08-20 01:38
本发明专利技术公开了一种图片压缩方法及装置,该方法包括:调用图形绘制函数,所述图形绘制函数用于在画布中绘制图片;依据所述画布在网页中的标识,获得所述图片;调用压缩函数,获得所述图片的编码字符串;根据所述压缩函数的图片质量参数,对所述编码字符串压缩。本申请方案,在客户端侧,将图片绘制到画布中,通过获得图片的编码字符串,并对该编码字符串进行压缩,实现了对图片的压缩。可见,本申请的方案实现了在客户端侧对图片的压缩,因此,当需要将图片上传至服务器时,所上传的图片也必然是压缩后的图片,以此加快了图片上传的速度,另外,服务器所保存的图片也必然为压缩后的图片,以此节省了服务器的存储空间。

【技术实现步骤摘要】
一种图片压缩方法及装置
本专利技术涉及图像压缩
,特别是涉及一种图片压缩方法及装置。
技术介绍
当今社会,信息呈爆炸性增长,用户人数达到全世界人口的60%,因此,提高用户体验度才能留住用户,从而提高市场占有率。图片压缩基于其能够加快客户端加载速度、减少服务器压力,而广受用户欢迎。现有的图片压缩的方法是将图片上传到服务器,并由服务器保存该图片,当网站编辑人员选择对图片进行发布时,才对图片进行压缩。可见,现有的图片压缩方案中,上传服务器的图片为未压缩的图片,上传未压缩的图片无疑会降低图片上传的速度,且,服务器所保存的图片也为未压缩的图片,而保存未压缩的图片会占用服务器的空间,导致服务器资源浪费。
技术实现思路
为解决上述技术问题,本专利技术实施例提供了一种图片压缩方法及装置,,技术方案如下:一种图片压缩方法,包括:调用图形绘制函数,所述图形绘制函数用于在画布中绘制图片;依据所述画布在网页中的标识,获得所述图片;调用压缩函数,获得所述图片的编码字符串;根据所述压缩函数的图片质量参数,对所述编码字符串压缩。优选地,根据所述压缩函数的图片质量参数,对所述编码字符串压缩,包括:获取所述编码字符串中满足预设重复度的字符;根据所述图片质量参数,更改所述字符的重复度。优选地,还包括:获取所述压缩函数的格式参数;判断所述图片的格式是否符合所述格式参数;若是,执行获得所述图片的编码字符串的步骤。优选地,还包括:将压缩后的编码字符串上传至服务器。优选地,还包括:获取与压缩后的编码字符串对应的压缩图片;将所述压缩图片上传至服务器。一种图片压缩装置,包括:第一调用单元,用于调用图形绘制函数,所述图形绘制函数用于在画布中绘制图片;图片获得单元,用于依据所述画布在网页中的标识,获得所述图片;第二调用单元,用于调用压缩函数,获得所述图片的编码字符串;压缩单元,用于根据所述压缩函数的图片质量参数,对所述编码字符串压缩。优选地,所述压缩单元,包括:字符获取单元,用于获取所述编码字符串中满足预设重复度的字符;更改单元,用于根据所述图片质量参数,更改所述字符的重复度。优选地,还包括:格式参数获取单元,用于获取所述压缩函数的格式参数;判断单元,用于判断所述图片的格式是否符合所述格式参数;执行单元,用于当所述判断单元确定所述图片的格式符合所述格式参数时,执行获得所述图片的编码字符串的步骤。优选地,还包括:第一上传单元,用于将压缩后的编码字符串上传至服务器。优选地,还包括:压缩图片获取单元,用于获取与压缩后的编码字符串对应的压缩图片;第二上传单元,用于将所述压缩图片上传至服务器。本专利技术实施例所提供的技术方案,在客户端侧,将图片绘制到画布中,通过获得图片的编码字符串,并对该编码字符串进行压缩,实现了对图片的压缩。可见,本申请的方案实现了在客户端侧对图片的压缩,因此,当需要将图片上传至服务器时,所上传的图片也必然是压缩后的图片,以此加快了图片上传的速度,另外,服务器所保存的图片也必然为压缩后的图片,以此节省了服务器的存储空间。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例所提供的一种图片压缩方法的一种流程示意图;图2为本专利技术实施例所提供的一种图片压缩方法的另一种流程示意图;图3为本专利技术实施例所提供的一种图片压缩装置的一种结构示意图;图4为本专利技术实施例所提供的一种图片压缩装置的另一种结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。请参阅图1,图1为本申请实施例提供的图片压缩方法的一种实现流程图,该方法在客户端侧执行,所述方法包括:步骤S101、调用图形绘制函数,所述图形绘制函数用于在画布中绘制图片;所述图形绘制函数可以为CanvasRenderingContext2D.drawImage()。当用户上传图片至服务器时,首先会点击客户端与服务器交互界面的上传按钮,当确认上传后,在交互界面显示预览状态的图片,当用户确认需要压缩图片时,获取该图片的地址,依据该地址、获得图片。步骤S102、依据所述画布在网页中的标识,获得所述图片;步骤S103、调用压缩函数,获得所述图片的编码字符串;步骤S104、根据所述压缩函数的图片质量参数,对所述编码字符串压缩。本申请的方案,在客户端侧,将图片绘制到画布中,通过获得图片的编码字符串,并对该编码字符串进行压缩,实现了对图片的压缩。可见,本申请的方案实现了在客户端侧对图片的压缩,因此,当需要将图片上传至服务器时,所上传的图片也必然是压缩后的图片,以此加快了图片上传的速度,另外,服务器所保存的图片也必然为压缩后的图片,以此节省了服务器的存储空间。请参阅图2,图2为本申请实施例提供的图片压缩方法的一种实现流程图,该方法在客户端侧执行,所述方法包括:步骤S201、调用图形绘制函数,所述图形绘制函数用于在画布中绘制图片;所述图形绘制函数可以为CanvasRenderingContext2D.drawImage()。当用户上传图片至服务器时,首先会点击客户端与服务器交互界面的上传按钮,当确认上传后,在交互界面显示预览状态的图片,当用户确认需要压缩图片时,获取该图片的地址,依据该地址、获得图片。步骤S202、判断是否需要对预览图片进行压缩,若是,执行步骤S203;由于图片的清晰度越高,图片越大,上传至服务器所占用的带宽越大,所以,当用户认为预览图片的清晰度较高时,对画布进行操作以指示是需要对图片进行压缩。另外,也可以预先设置清晰度阈值,当判断预览图片的清晰度大于清晰度阈值时,说明需要对图片进行压缩。步骤S203、依据所述画布在网页中的标识,获得所述图片;画布在网页中的标识用于指示画布在网页中的地址,以及用户对画布的操作权限,所以,当得到画布在网页中的标识后,可以对画布操作,获得画布中的图片。步骤S204、获取压缩函数的格式参数;压缩函数为HTMLCanvasElement(画布ID).toDataURL(type,quality)其中,type为压缩函数所能处理的图片格式参数,quality表示压缩函数的压缩率参数,根据需要quality取值为0-1中的任一数字,如当quality取为0.7时,表示压缩函数能将图片压缩到70%。需要说明的是,本申请中压缩率的可以对格式为image/jpeg或image/webp的图片进行压缩。步骤S205、判断所述图片的格式是否符合所述格式参数,若是,执行步骤S206;现有技术中,图片的格式包括mage/jpeg、image/png、image/webp,所以,图片的格式为image/jpeg或image/webp时,才能对图片进行压缩,当图片格式为image/png时,则不能采用本申请的方案对其压缩。步骤S206、获得所述图片的编码本文档来自技高网...
一种图片压缩方法及装置

【技术保护点】
一种图片压缩方法,其特征在于,包括:调用图形绘制函数,所述图形绘制函数用于在画布中绘制图片;依据所述画布在网页中的标识,获得所述图片;调用压缩函数,获得所述图片的编码字符串;根据所述压缩函数的图片质量参数,对所述编码字符串压缩。

【技术特征摘要】
1.一种图片压缩方法,其特征在于,包括:调用图形绘制函数,所述图形绘制函数用于在画布中绘制图片;依据所述画布在网页中的标识,获得所述图片;调用压缩函数,获得所述图片的编码字符串;根据所述压缩函数的图片质量参数,对所述编码字符串压缩。2.根据权利要求1所述的方法,其特征在于,根据所述压缩函数的图片质量参数,对所述编码字符串压缩,包括:获取所述编码字符串中满足预设重复度的字符;根据所述图片质量参数,更改所述字符的重复度。3.根据权利要求2所述的方法,其特征在于,还包括:获取所述压缩函数的格式参数;判断所述图片的格式是否符合所述格式参数;若是,执行获得所述图片的编码字符串的步骤。4.根据权利要求1所述的方法,其特征在于,还包括:将压缩后的编码字符串上传至服务器。5.根据权利要求1所述的方法,其特征在于,还包括:获取与压缩后的编码字符串对应的压缩图片;将所述压缩图片上传至服务器。6.一种图片压缩装置,其特征在于,包括:第一调用单元,用于调用图形绘制函数,所述图形绘制函数用于在画布中绘制...

【专利技术属性】
技术研发人员:沈文策
申请(专利权)人:福建中金在线信息科技有限公司
类型:发明
国别省市:福建,35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1