拉伸图片的方法和设备的制作方法

文档序号:6489991
拉伸图片的方法和设备的制作方法
【专利摘要】公开了一种拉伸图片的方法和设备。更具体而言,公开了一种用于拉伸图片的方法,包括:接收图片的裁剪参数;根据所述裁剪参数,使用两条横向线和两条纵向线将所述图片裁剪为包括9个区域的九宫格;根据显示区域的尺寸确定所述图片的各个区域的拉伸比例;以及根据所述拉伸比例拉伸除处于四个角之外的其他区域。
【专利说明】拉伸图片的方法和设备
【技术领域】
[0001]本发明的实施方式总体上涉及网络信息【技术领域】,更具体地,涉及用于拉伸图片的方法和设备。
【背景技术】
[0002]图片已经称为互联网领域中的重要元素。然而,图片的尺寸并不能总是适应显示区域的尺寸。因此,通常需要拉伸图片,以使其尺寸适应显示区域的尺寸。将小尺寸的普通图片用于Android环境中的相应的应用(API)时,由于普通图片的尺寸较小,可能需要拉伸图片,以适应将要放置的显示区域的尺寸。现有技术通常使用整体拉伸方式,即在横向和纵向之一或者两者上整体拉伸图片,从而使图片的尺寸适应相应的API的尺寸。然而,在整体拉伸之后,图片显示通常会出现失真。为了避免拉伸之后出现显示失真,通常选择性地拉伸图片的某些区域。
[0003]在Android环境中,通常使用九宫格图片,即9.png图片。这种格式的图片在Android环境下具有自适应调节大小的能力。其允许开发人员定义可扩展区域,当需要拉伸图片以填充比图片本身更大区域时,可扩展区的内容被拉伸。其还允许开发人员定义内容显示区,用于显示文字或其他内容其可以实现图片的部分拉伸。然而,对于普通图片,例如PNG格式的图片而言,通常需要将该图片通过Android提供的工具添加黑边,并且将其保存为文件名为.9.png的图片,然后经过Android编译器的处理以供Android的API使用。
9.png图片是经过Android的工具进行特殊处理过的,如果不处理的话,直接用PNG图就会有失真,从而出现拉伸后失真的问题。然而,使用Android的工具对图片进行预处理和编译操作较为复杂。
[0004]因此,需要一种简化的图片拉伸方法,利用该方法,不需要对普通图片进行预先处理和编译,就可以后续实现图片的自由拉伸,同时没有显示失真的问题。

【发明内容】

[0005]为了提供一种简化的图片拉伸方法,本发明提供了一种用于拉伸图片的方法,利用该方法,不需要对普通图片进行预先处理和编译,就可以后续实现图片的自由拉伸,同时没有显不失真。
[0006]更具体而言,在本发明的一个方面中,提供了一种用于拉伸图片的方法,该方法包括:接收图片的裁剪参数;根据所述裁剪参数,使用两条横向线和两条纵向线将所述图片裁剪为包括9个区域的九宫格;根据显示区域的尺寸确定所述图片的各个区域的拉伸比例;以及根据所述拉伸比例拉伸除处于四个角之外的其他区域。
[0007]在本发明的可选实施方式中,其中所述图片的格式包括PNG、BMP、JPG、TIFF。
[0008]在本发明的可选实施方式中,其中所述裁剪参数包括用于将所述图片裁剪为九宫格的横向线和纵向线的位置坐标。
[0009]在本发明的可选实施方式中,其中所述裁剪参数包括在所述图片的描述信息中。[0010]在本发明的可选实施方式中,所述裁剪参数根据所述图片的内容确定。
[0011 ] 在本发明的可选实施方式中,所述裁剪参数根据所述图片的四个角的形状和尺寸确定。
[0012]在本发明的可选实施方式中,根据所述拉伸比例拉伸除处于四个角之外的其他区域包括:在横向和纵向之一或者这两者上拉伸处于9个区域的中心处的中心区域;仅在横向上拉伸处于所述中心区域的纵向方向上的两个区域;以及仅在纵向上拉伸处于所述中心区域的横向方向上的两个区域。
[0013]在本发明的可选实施方式中,该方法还可以包括将经拉伸的区域与处于四个角的、未拉伸的区域组合成经拉伸的图片。
[0014]在本发明的可选实施方式中,该方法还可以包括:将经拉伸的图片用于显示。
[0015]在本发明的另一个方面中,提供了一种用于拉伸图片的设备,包括:接收装置,配置用于接收图片的裁剪参数;裁剪装置,配置用于根据所述裁剪参数,使用两条横向线和两条纵向线将所述图片裁剪为包括9个区域的九宫格;拉伸比例确定装置,配置用于根据显示区域的尺寸确定所述图片的各个区域的拉伸比例;以及拉伸装置,配置用于根据所述拉伸比例拉伸除处于四个角之外的其他区域。
[0016]在本发明的可选实施方式中,其中所述图片的格式包括PNG、BMP、JPG、TIFF。
[0017]在本发明的可选实施方式中,其中所述裁剪参数包括用于将所述图片裁剪为九宫格的横向线和纵向线的位置坐标。
[0018]在本发明的可选实施方式中,其中所述裁剪参数包括在所述图片的描述信息中。
[0019]在本发明的可选实施方式中,所述裁剪参数根据所述图片的内容确定。
[0020]在本发明的可选实施方式中,所述裁剪参数根据所述图片的四个角的形状和尺寸确定。
[0021]在本发明的可选实施方式中,根据所述拉伸比例拉伸除处于四个角之外的其他区域包括:在横向和纵向之一或者这两者上拉伸处于9个区域的中心处的中心区域;仅在横向上拉伸处于所述中心区域的纵向方向上的两个区域;以及仅在纵向上拉伸处于所述中心区域的横向方向上的两个区域。
[0022]在本发明的可选实施方式中,该设备还可以包括组合装置,配置用于将经拉伸的区域与处于四个角的、未拉伸的区域组合成经拉伸的图片。
[0023]在本发明的可选实施方式中,该设备还可以包括:显示装置,配置用于将经拉伸的图片用于显示。
【专利附图】

【附图说明】
[0024]通过参考附图阅读下文的详细描述,本发明实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:
[0025]图1是根据本发明的实施方式用于拉伸图片的方法的流程图;
[0026]图2a和图2b示出了在拉伸之后和拉伸之前的图片的示意图;
[0027]图3是根据本发明的实施方式用于拉伸图片的设备的方框图;以及图4是用于实现本发明实施方式的计算机系统示意图。[0028]在附图中,相同或对应的标号表示相同或对应的部分。
【具体实施方式】
[0029]下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。
[0030]下面结合附图以示例的方式详细描述本发明的各种实施方式。首先参考图1,其示出了根据本发明实施方式的拉伸图片的方法100的流程图。应当理解,方法100中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。方法100还可以包括附加的步骤和/或省略执行示出的步骤。本发明的范围在此方面不受限制。
[0031]方法100在开始之后,在步骤S102处接收图片的裁剪参数。其中,该图片的格式包括PNG、BMP、JPG、TIFF。注意到,在下文中,将以PNG格式作为示例。然而,可以理解,可以使用其他类型的通用的图片格式。
[0032]所述裁剪参数包括用于将所述图片裁剪为九宫格的横向线和纵向线的位置坐标。例如,如果两条横向线和两条纵向线可以用来将图片裁剪为包括9个区域的九宫格。图2a和图2b示出了用于将图片裁剪为包括9个区域的九宫格的在横向方向上的两条线(LI和L2)以及在纵向方向上的两条线(L3和L4)。在图2所示出的示例中,原始图片的尺寸为(2,I),其中以图片的长边为X轴,而以其短边为Y轴。显示区域的尺寸(即,拉伸后图片的尺寸)为(3,2)。L1、L2即离Y轴分别为0.4与1.6。L3、L4距离X轴分别为0.2与0.8。
[0033]在本发明的 优先可选实施方式中,所述裁剪参数可以包括在所述图片的描述信息中。从而使得在接收图片时,就可以得到图片的裁剪参数,从而有利于将图片裁剪为包括9个区域的九宫格。
[0034]注意到,裁剪参数可以根据图片的内容来确定。例如,可以根据需要,把图片的不希望被拉伸从而防止出现失真的部分裁剪在四角区域中。裁剪参数还可以根据图片的四个角的形状和尺寸来确定。例如,在实际应用中,图片经常具有圆角。因此,可以根据圆角的直径确定裁剪参数,从而使得在裁剪后的图片中,圆角包括在不会被拉伸的四角区域中,从而防止出现显示失真。
[0035]接着,方法100行进到步骤S104。在该步骤处,根据在步骤S102处接收到裁剪参数,利用两条横向线和两条纵向线将所述图片裁剪为包括9个区域的九宫格。图2中示出了原始图片被LI和L2以及L3和L4裁剪为9个区域,即区域1、2、3、4、5、6、7、8、9。其中,区域1、3、7、9位于这9个区域的四个角上,而区域5位于9个区域的中心,即其为中心区域。区域2、8位于中心区域5的纵向方向上,而区域4、6位于中心区域5的横向方向上。
[0036]接下来,方法100行进到步骤S106。在该步骤处,根据显示区域的尺寸确定所述图片的各个区域的拉伸比例。拉伸比例由显示区域的尺寸和初始图片的尺寸,以及在横向和纵向方向的线的位置确定。处于4个角的4个区域,即区域1、3、7、9的拉伸比例固定为(1,I),表示这4个区域在横向和纵向上的拉伸比例都为1,即该4个区域不拉伸。在图2所示
出的示例中,中心区域5的拉伸比例例如为(3-0.8/2-0.8,2-0.4/1-0.4)即为(11/6,8/3 ),表示其
在横向上的拉伸比例为11/6而在纵向上的拉伸比例为8/3。区域4、6的拉伸比例为(1,8/3),表示其在横向上不拉伸,而在纵向上的拉伸比例为要。而区域2、8的拉伸比例为(¥,1 ),
表示其在纵向上不拉伸,而在横向上的拉伸比例为
[0037]接下来,方法100行进到步骤S108。在该步骤处,根据拉伸比例拉伸除处于四个角之外的其他区域。在图2所示出的示例中,即拉伸除区域1、3、7、9这四个区域之外的其他区域,以适应显示区域的尺寸。
[0038]最后,方法100还可以包括将经拉伸的区域与处于四个角的区域组合成经拉伸的图片的步骤。图2b示出了在拉伸之后的图片。由图2b可见,在拉伸前后,区域1、3、7、9保持不变,区域2、8仅在横向方向上拉伸,而区域4、6仅在纵向方向上拉伸。中心区域5可以在纵向与横向方向上拉伸。然后,将未拉伸的区域1、3、7、9与经拉伸的区域2、4、5、6、8组合成经拉伸的图片。
[0039]注意到,虽然参照图2的示例中描述了在横向与纵向上拉伸中心区域。然而,本领域技术人员可以理解,根据拉伸比例,可以仅在一个方向上拉伸中心区域。
[0040]在本发明的优先可选实施方式中,方法100还可以包括将经拉伸的图片用于显示的步骤。
[0041]注意到,在附图中,为方便起见,将图片的四个角示出为直角。然而,应当理解的是,在实际应用中,图片经常为圆角的。根据本发明的实施例可以应用于图片具有直角和圆角的情况。
[0042]利用本发明的上述实施方式,可以在不需要将普通格式的图片利用Android应用转换为九宫格格式的图片的情况下而进行自由拉伸,同时经拉伸的图片没有失真,从而达到与Android的九宫格图片至少相同的显示效果。
[0043]注意到,虽然在上述描述中仅描述了使用两条横向线和两条纵向将图片裁剪为9个区域来进行拉伸。然而,应当理解的是,可以根据需要将图片裁剪为更多个区域来进行拉伸,只要保证在拉伸中位于四个角处的区域保持不变即可。
[0044]现在参考图3,其示出了根据本发明示例性实施方式的用于计算地理信息的数字摘要的设备300的框图。如图所示,根据本发明的实施方式,设备300包括接收装置302,配置用于接收图片的裁剪参数;裁剪装置304,配置用于根据所述裁剪参数,使用两条横向线和两条纵向线将所述图片裁剪为包括9个区域的九宫格;拉伸比例确定装置306,配置用于根据显示区域的尺寸确定所述图片的各个区域的拉伸比例;以及拉伸装置308,配置用于根据所述拉伸比例拉伸除处于四个角之外的其他区域。
[0045]在本发明的可选实施方式中,其中所述图片的格式包括PNG、BMP、JPG、TIFF。
[0046]在本发明的可选实施方式中,其中所述裁剪参数包括用于将所述图片裁剪为九宫格的横向线和纵向线的位置坐标。
[0047]在本发明的可选实施方式中,其中所述裁剪参数包括在所述图片的描述信息中。
[0048]在本发明的可选实施方式中,所述裁剪参数根据所述图片的内容确定。
[0049]在本发明的可选实施方式中,所述裁剪参数根据所述图片的四个角的形状和尺寸确定。
[0050]在本发明的可选实施方式中,所述拉伸装置进一步被配置用于:在横向和纵向之一或者这两者上拉伸处于9个区域的中心处的中心区域;仅在横向上拉伸处于所述中心区域的纵向方向上的两个区域;以及仅在纵向上拉伸处于所述中心区域的横向方向上的两个区域。
[0051]在本发明的可选实施方式中,还包括组合装置,配置用于将经拉伸的区域与处于四个角的、未拉伸的区域组合成经拉伸的图片。
[0052]在本发明的可选实施方式中,还包括显示装置,配置用于将经拉伸的图片用于显
/Jn ο
[0053]为清晰起见,在图3中并未示出各个装置所包含的子装置。然而,应当理解,设备300中记载的装置302-308及其子装置分别与参考图1描述的方法100中的步骤S102-S108相对应。由此,上文针对图1中的方法100描述的操作和特征同样适用于设备300及其中包含的装置和子装置,在此不再赘述。
[0054]还应当理解,设备300可以利用各种方式来实现。例如,在某些实施方式中,设备300可以利用软件和/或固件模块来实现。此外,设备300也可以利用硬件模块来实现。例如,设备300可以实现为集成电路(IC)芯片或专用集成电路(ASIC)。设备300也可以实现为片上系统(SOC)。现在已知或者将来开发的其他方式也是可行的,本发明的范围在此方面不受限制。
[0055]图4示出了适于用来实践本发明实施方式的计算机系统的示意性框图。如图4所示,计算机系统可以包括:CPU(中央处理单元)401、RAM(随机存取存储器)402、ROM(只读存储器)403、系统总线404、硬盘控制器405、键盘控制器406、串行接口控制器407、并行接口控制器408、显示控制器409、硬盘410、键盘411、串行外部设备412、并行外部设备413和显示器414。在这些设备中,与系统总线404耦合的有CPU 401、RAM 402、ROM 403、硬盘控制器405、键盘控制器406、串行控制器407、并行控制器408和显示控制器409。硬盘410与硬盘控制器405耦合,键盘411与键盘控制器406耦合,串行外部设备412与串行接口控制器407耦合,并行外部设备413与并行接口控制器408耦合,以及显示器414与显示控制器409耦合。
[0056]应当理解,图4所述的结构框图仅仅为了示例的目的而示出的,而不是对本发明范围的限制。在某些情况下,可以根据具体情况而增加或者减少某些设备。
[0057]特别地,除硬件实施方式之外,本发明的实施方式可以通过计算机程序产品的形式实现。例如,参考图1描述的方法100可以通过计算机程序产品来实现。该计算机程序产品可以存储在例如图4所示的RAM 402、ROM 403、硬盘410和/或任何适当的存储介质中,或者通过网络从适当的位置下载到计算机系统400上。计算机程序产品可以包括计算机代码部分,其包括可由适当的处理设备(例如,图4中示出的CPU 401)执行的程序指令。程序指令可以包括:用于接收图片的裁剪参数的指令;用于根据所述裁剪参数,使用两条横向线和两条纵向线将所述图片裁剪为包括9个区域的九宫格的指令;用于根据显示区域的尺寸确定所述图片的各个区域的拉伸比例的指令;以及用于根据所述拉伸比例拉伸除处于四个角之外的其他区域的指令。
[0058]应当注意,本发明的实施方式可以通过硬件、软件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的设备及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。
[0059]说明书中提及的通信网络可以包括各类网络,包括但不限于局域网(“LAN”),广域网(“WAN”),根据IP协议的网络(例如,因特网)以及端对端网络(例如,ad hoc对等网络)。
[0060]应当注意,尽管在上文详细描述中提及了设备的若干装置或子装置,但是这种裁剪仅仅并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多装置的特征和功能可以在一个装置中具体化。反之,上文描述的一个装置的特征和功能可以进一步裁剪为由多个装置来具体化。
[0061]此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
[0062]虽然已经参考若干【具体实施方式】描述了本发明,但是应该理解,本发明并不限于所公开的【具体实施方式】。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。所附权利要求的范围符合最宽泛的解释,从而包含所有这样的修改及等同结构和功能。
【权利要求】
1.一种用于拉伸图片的方法,包括: 接收图片的裁剪参数; 根据所述裁剪参数,使用两条横向线和两条纵向线将所述图片裁剪为包括9个区域的九宫格; 根据显示区域的尺寸确定所述图片的各个区域的拉伸比例;以及 根据所述拉伸比例拉伸除处于四个角之外的其他区域。
2.根据权利要求1所述的方法,其中所述图片的格式包括PNG、BMP、JPG、TIFF。
3.根据权利要求1所述的方法,其中所述裁剪参数包括用于将所述图片裁剪为九宫格的横向线和纵向线的位置坐标。
4.根据权利要求1所述的 方法,其中所述裁剪参数包括在所述图片的描述信息中。
5.根据权利要求1所述的方法,所述裁剪参数根据所述图片的内容确定。
6.根据权利要求1所述的方法,所述裁剪参数根据所述图片的四个角的形状和尺寸确定。
7.根据权利要求1所述的方法,根据所述拉伸比例拉伸除处于四个角之外的其他区域包括: 在横向和纵向之一或者这两者上拉伸处于9个区域的中心处的中心区域; 仅在横向上拉伸处于所述中心区域的纵向方向上的两个区域;以及 仅在纵向上拉伸处于所述中心区域的横向方向上的两个区域。
8.根据权利要求1所述的方法,还包括将经拉伸的区域与处于四个角的、未拉伸的区域组合成经拉伸的图片。
9.根据权利要求8所述的方法,还包括:将经拉伸的图片用于显示。
10.一种用于拉伸图片的设备,包括: 接收装置,配置用于接收图片的裁剪参数; 裁剪装置,配置用于根据所述裁剪参数,使用两条横向线和两条纵向线将所述图片裁剪为包括9个区域的九宫格; 拉伸比例确定装置,配置用于根据显示区域的尺寸确定所述图片的各个区域的拉伸比例;以及 拉伸装置,配置用于根据所述拉伸比例拉伸除处于四个角之外的其他区域。
11.根据权利要求10所述的设备,其中所述图片的格式包括PNG、BMP、JPG、TIFF。
12.根据权利要求10所述的设备,其中所述裁剪参数包括用于将所述图片裁剪为九宫格的横向线和纵向线的位置坐标。
13.根据权利要求10所述的设备,其中所述裁剪参数包括在所述图片的描述信息中。
14.根据权利要求10所述的设备,所述裁剪参数根据所述图片的内容确定。
15.根据权利要求10所述的设备,所述裁剪参数根据所述图片的四个角的形状和尺寸确定。
16.根据权利要求10所述的设备,所述拉伸装置进一步被配置用于: 在横向和纵向之一或者这两者上拉伸处于9个区域的中心处的中心区域; 仅在横向上拉伸处于所述中心区域的纵向方向上的两个区域;以及 仅在纵向上拉伸处于所述中心区域的横向方向上的两个区域。
17.根据权利要求10所述的设备,还包括组合装置,配置用于将经拉伸的区域与处于四个角的、未拉伸的区域组合成经拉伸的图片。
18.根据权利要求17所述的设备,还包括显示装置,配置用于将经拉伸的图片用于显
【文档编号】G06T11/00GK103729865SQ201210400798
【公开日】2014年4月16日 申请日期:2012年10月16日 优先权日:2012年10月16日
【发明者】王志韬 申请人:北京千橡网景科技发展有限公司
再多了解一些
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1