一种png图片逐行解压的系统及方法

文档序号:6522022阅读:256来源:国知局
一种png图片逐行解压的系统及方法【专利摘要】本发明公开了一种PNG图片逐行解压的系统及方法,其申请解压缩空间的时候只申请解压缩图片的一行需要的内存空间,这样就节省了大量内存空间,一般是原来的1%以下;另外,提前计算好缩放比例,在解压完成一行后就根据计算好的缩放比例来确定该行数据是否使用,如果需要使用再缩放好该行,然后再解压缩下一行数据,从而解决了显示大尺寸图片时的内存不足问题。【专利说明】—种PNG图片逐行解压的系统及方法【
技术领域
】[0001]本发明涉及图像压缩【
技术领域
】,特别涉及一种PNG图片逐行解压的系统及方法。【
背景技术
】[0002]PNG(PortableNetworkGraphicFormat可移植网络图形格式)是一种图像文件存储格式,其目的是试图替代GIF和TIFF文件格式,同时增加一些GIF文件格式所不具备的特性。[0003]目前,机顶盒显示一张PNG图片时,通常做法依次包括以下步骤:首先,读取图片尺寸信息,然后,根据图片尺寸申请解压内存,解压后再根据图片原始尺寸和屏幕尺寸计算出缩放比例,最后根据缩放比例缩放到屏幕适合的大小进行显示。[0004]通常解压一张图片需要的内存计算方法为:图片长度X图片宽度X3=解压整张图片需要的内存。[0005]由上面的公式可以看出,目前解压整张图片需要的内存大小需要满足图片长度X图片宽度X3。对于一般机顶盒而言,显示大尺寸PNG图片时,经常会受到机顶盒内存大小的限制,无法显示很大尺寸的图片:当需要显示的图片原始尺寸很大的时候,通常解压需要的内存很大,机顶盒无法分配到足够内存,于是导致图片显示失败。[0006]有鉴于此,现有技术有待改进和提闻。【
发明内容】[0007]鉴于上述现有技术的不足之处,本发明的目的在于提供一种PNG图片逐行解压的系统及方法,以解决现有技术中机顶盒解决显示大尺寸图片时的内存不足的问题。[0008]为了达到上述目的,本发明采取了以下技术方案:一种PNG图片逐行解压的方法,用于机顶盒对PNG图片进行解压并显示,其中,包括:A、读取图片原始尺寸信息;B、向机顶盒申请解压图片的一行需要的内存空间;C、根据图片原始尺寸和最终的显示尺寸计算出图片缩放比例,读取图片的一行的压缩数据解压到上述的内存空间中;D、根据缩放比例确定该行是否需要显示,若是则根据缩放比例进行宽度的缩放;E、读取图片的下一行的压缩数据,并放入到上述的内存空间中后,重复步骤D直至完成图片的全部解压缩。[0009]所述的PNG图片逐行解压的方法,其中,所述步骤D中当确定该行不需要显示时,则丢弃改行数据。[0010]所述的PNG图片逐行解压的方法,其中,所述步骤B中解压图片的一行需要的内存空间大小=图片宽度值X3。[0011]一种PNG图片逐行解压的系统,用于机顶盒对PNG图片进行解压并显示,其中,包括:读取单元,用于读取图片原始尺寸信息;申请单元,用于向机顶盒申请解压图片的一行需要的内存空间;计算单元,用于根据图片原始尺寸和最终的显示尺寸计算出图片缩放比例,读取图片的一行的压缩数据解压到上述的内存空间中;显示单元,用于根据缩放比例确定该行是否需要显示,若是则根据缩放比例进行宽度的缩放;重复单元,用于读取图片的下一行的压缩数据,并放入到上述的内存空间中后,发送至显示单元中直至完成图片的全部解压缩。[0012]所述的PNG图片逐行解压的系统,其中,所述显示单元中当确定该行不需要显示时,则丢弃改行数据。[0013]所述的PNG图片逐行解压的系统,其中,所述申请单元中解压图片的一行需要的内存空间大小=图片宽度值X3。[0014]相较于现有技术,本发明提供的PNG图片逐行解压的系统及方法,申请解压缩空间的时候只申请解压缩图片的一行需要的内存空间,这样就节省了大量内存空间,一般是原来的1%以下;另外,提前计算好缩放比例,在解压完成一行后就根据计算好的缩放比例来确定该行数据是否使用,如果需要使用再缩放好该行,然后再解压缩下一行数据,从而解决了显示大尺寸图片时的内存不足问题。【专利附图】【附图说明】[0015]图1为本发明提供的PNG图片逐行解压的方法的流程图。[0016]图2为本发明提供的PNG图片逐行解压的系统的结构框图。【具体实施方式】[0017]本发明提供一种PNG图片逐行解压的系统及方法,为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。[0018]本发明提供的PNG图片逐行解压的方法,用于机顶盒对PNG图片进行解压并显示。请参阅图1,其为本发明提供的PNG图片逐行解压的方法的流程图。如图1所示,本发明的PNG图片逐行解压的方法包括:51、读取图片原始尺寸信息;52、向机顶盒申请解压图片的一行需要的内存空间;53、根据图片原始尺寸和最终的显示尺寸计算出图片缩放比例,读取图片的一行的压缩数据解压到上述的内存空间中;54、根据缩放比例确定该行是否需要显示,若是则根据缩放比例进行宽度的缩放;55、读取图片的下一行的压缩数据,并放入到上述的内存空间中后,重复步骤S4直至完成图片的全部解压缩。[0019]下面分别针对上述步骤进行详细描述。[0020]所述步骤SI为读取图片原始尺寸信息。即判断索要解压缩并显示的图片的原始尺寸信息。图像尺寸的像素是以长度与宽度为单位的,也有的是以厘米为单位。像素与分辨率像素是数码影像最基本的单位,每个像素就是一个小点,而不同颜色的点(像素)聚集起来就变成一幅照片。[0021]所述步骤S2为向机顶盒申请解压图片的一行需要的内存空间。与现有技术不同,本发明的PNG图片逐行解压的方法只申请解压缩图片的一行需要的内存空间,这样就节省了大量内存空间,一般是原来的1%以下。[0022]所述步骤S3为根据图片原始尺寸和最终的显示尺寸计算出图片缩放比例,读取图片的一行的压缩数据解压到上述的内存空间中。其中,根据图片原始尺寸和最终的显示尺寸计算出图片缩放比例为现有技术,这里就不多做赘述。计算出图片缩放比例后,再读取图片的一行的压缩数据解压到上述的内存空间中(上述内存空间为申请的一行需要的内存空间)。在本实施例中,解压图片的一行需要的内存空间大小=图片宽度值X3。[0023]所述步骤S4为根据缩放比例确定该行是否需要显示,若是则根据缩放比例进行宽度的缩放。本发明提前计算好缩放比例,在解压完成一行后就根据计算好的缩放比例来确定该行数据是否使用,如果需要使用再缩放好该行,然后再解压缩下一行数据。[0024]所述步骤S5为读取图片的下一行的压缩数据,并放入到上述的内存空间中后,重复步骤S4直至完成图片的全部解压缩。简单来说,当解压缩一行数据后,按照上述步骤S4中的步骤读取图片的下一行的压缩数据,并放入到上述的内存空间中后,根据缩放比例确定该行是否需要显示,若是则根据缩放比例进行宽度的缩放。直至完成图片的全部解压缩。[0025]需要注意的是,当确定该行不需要显示时,则丢弃改行数据。[0026]本发明还相应提供一种PNG图片逐行解压的系统,用于机顶盒对PNG图片进行解压并显示,如图2所示,包括:读取单元100,用于读取图片原始尺寸信息;申请单元200,用于向机顶盒申请解压图片的一行需要的内存空间;计算单元300,用于根据图片原始尺寸和最终的显示尺寸计算出图片缩放比例,读取图片的一行的压缩数据解压到上述的内存空间中;显示单元400,用于根据缩放比例确定该行是否需要显示,若是则根据缩放比例进行宽度的缩放;重复单元500,用于读取图片的下一行的压缩数据,并放入到上述的内存空间中后,发送至显示单元中直至完成图片的全部解压缩。[0027]优选地,所述的PNG图片逐行解压的系统中,所述显示单元中当确定该行不需要显示时,则丢弃改行数据。[0028]优选地,所述的PNG图片逐行解压的系统中,所述申请单元中解压图片的一行需要的内存空间大小=图片宽度值X3。[0029]上述PNG图片逐行解压的系统中的各个模块,都已经在上述方法中进行了介绍,这里不多做描述。[0030]综上所述,本发明提供的PNG图片逐行解压的系统及方法,其申请解压缩空间的时候只申请解压缩图片的一行需要的内存空间,这样就节省了大量内存空间,一般是原来的1%以下;另外,提前计算好缩放比例,在解压完成一行后就根据计算好的缩放比例来确定该行数据是否使用,如果需要使用再缩放好该行,然后再解压缩下一行数据,从而解决了显示大尺寸图片时的内存不足问题。[0031]可以理解的是,对本领域普通技术人员来说,可以根据本发明的技术方案及其发明构思加以等同替换或改变,而所有这些改变或替换都应属于本发明所附的权利要求的保护范围。【权利要求】1.一种PNG图片逐行解压的方法,用于机顶盒对PNG图片进行解压并显示,其特征在于,包括:A、读取图片原始尺寸信息;B、向机顶盒申请解压图片的一行需要的内存空间;C、根据图片原始尺寸和最终的显示尺寸计算出图片缩放比例,读取图片的一行的压缩数据解压到上述的内存空间中;D、根据缩放比例确定该行是否需要显示,若是则根据缩放比例进行宽度的缩放;E、读取图片的下一行的压缩数据,并放入到上述的内存空间中后,重复步骤D直至完成图片的全部解压缩。2.根据权利要求1所述的PNG图片逐行解压的方法,其特征在于,所述步骤D中当确定该行不需要显示时,则丢弃改行数据。3.根据权利要求1所述的PNG图片逐行解压的方法,其特征在于,所述步骤B中解压图片的一行需要的内存空间大小=图片宽度值X3。4.一种PNG图片逐行解压的系统,用于机顶盒对PNG图片进行解压并显示,其特征在于,包括:读取单元,用于读取图片原始尺寸信息;申请单元,用于向机顶盒申请解压图片的一行需要的内存空间;计算单元,用于根据图片原始尺寸和最终的显示尺寸计算出图片缩放比例,读取图片的一行的压缩数据解压到上述的内存空间中;显示单元,用于根据缩放比例确定该行是否需要显示,若是则根据缩放比例进行宽度的缩放;重复单元,用于读取图片的下一行的压缩数据,并放入到上述的内存空间中后,发送至显示单元中直至完成图片的全部解压缩。5.根据权利要求4所述的PNG图片逐行解压的系统,其特征在于,所述显示单元中当确定该行不需要显示时,则丢弃改行数据。6.根据权利要求4所述的PNG图片逐行解压的系统,其特征在于,所述申请单元中解压图片的一行需要的内存空间大小=图片宽度值X3。【文档编号】G06F17/30GK103678543SQ201310639992【公开日】2014年3月26日申请日期:2013年12月4日优先权日:2013年12月4日【发明者】于海波申请人:康佳集团股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1