图片生成方法及装置转让专利

申请号 : CN201310309605.4

文献号 : CN104331527B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈鸽

申请人 : 腾讯科技(深圳)有限公司

摘要 :

一种图片生成方法,包括:获取图层;获取机型参数,获取与所述机型参数对应的分辨率参数;根据所述分辨率参数调整所述图层的分辨率,并生成相应的图片。此外,还提供了一种图片生成装置。上述图片生成方法及装置能够提高生成图片的速度。

权利要求 :

1.一种图片生成方法,包括:

获取图层;

获取所述图层对应的输出类型标记;

根据所述输出类型标记筛选或合并图层;

获取机型参数,获取与所述机型参数对应的分辨率参数;

根据所述分辨率参数调整所述图层的分辨率,并生成相应的图片。

2.根据权利要求1所述的图片生成方法,其特征在于,所述获取图层的步骤为:获取图层组,根据所述图层组获取图层。

3.根据权利要求2所述的图片生成方法,其特征在于,所述获取所述图层对应的输出类型标记的步骤还包括:获取所述图层所属的图层组,获取所述图层组对应的输出类型标记,所述图层组对应的输出类型标记即所述图层组包含的图层对应的输出类型标记。

4.根据权利要求3所述的图片生成方法,其特征在于,所述根据所述输出类型标记筛选或合并图层的步骤包括:根据所述输出类型标记筛选所述图层组,获取筛选后得到的图层组中包含的图层;

和/或根据所述输出类型标记合并所述图层组中包含的图层。

5.根据权利要求1至4任一项所述的图片生成方法,其特征在于,所述生成相应的图片的步骤之前还包括:获取输入的文件名前缀;

所述生成相应的图片的步骤还包括:

根据所述文件名前缀生成所述生成的图片的文件名。

6.一种图片生成装置,其特征在于,包括:图层获取模块,用于获取图层;

图层分类模块,用于获取所述图层对应的输出类型标记;

所述图层分类模块还用于根据所述输出类型标记筛选或合并图层;

参数获取模块,用于获取机型参数,获取与所述机型参数对应的分辨率参数;

图片输出模块,用于根据所述分辨率参数调整所述图层的分辨率,并生成相应的图片。

7.根据权利要求6所述的图片生成装置,其特征在于,所述图层获取模块还用于获取图层组,根据所述图层组获取图层。

8.根据权利要求7所述的图片生成装置,其特征在于,所述图层分类模块还用于获取所述图层所属的图层组,获取所述图层组对应的输出类型标记,所述图层组对应的输出类型标记即所述图层组包含的图层对应的输出类型标记。

9.根据权利要求8所述的图片生成装置,其特征在于,所述图层分类模块还用于根据所述输出类型标记筛选所述图层组,获取筛选后得到的图层组中包含的图层;和/或根据所述输出类型标记合并所述图层组中包含的图层。

10.根据权利要求6至9任一项所述的图片生成装置,其特征在于,所述图片输出模块还用于获取输入的文件名前缀,根据所述文件名前缀生成所述生成的图片的文件名。

说明书 :

图片生成方法及装置

技术领域

[0001] 本发明涉及互联网技术领域,特别是涉及一种图片生成方法及装置。

背景技术

[0002] 现有技术中的美工或UI(User Interface,用户界面)设计师在为软件产品设计UI时,通常需要使用图像编辑软件(例如photoshop、coreldraw)设计软件界面图。例如,UI设计师可通过photoshop设计背景图和图标等。
[0003] 同时,当今移动终端型号众多,根据硬件配置的不同显示屏的分辨率大小不一,例如,配备3.5英寸视网膜屏的手机,其分辨率达到960×640,配备13.3英寸视网膜屏的笔记本电脑,其分辨率则达到了2560×1600,而配备4.5英寸高清屏的手机,其分辨率则为1280×768(注,上述分辨率单位均为像素)。因此,对于运行于多个移动终端上的软件产品,UI设计师需要根据移动终端屏幕的分辨率来生成相应的界面图。
[0004] 然而,传统技术中,UI设计师在设计好界面图素材之后,需要根据移动终端的屏幕分辨率手动设定分辨率参数从而生成图片。当图片数量较多或对应的屏幕分辨率的种类较多时,用户手动机械操作的过程较繁琐,使得生成图片的速度较慢。

发明内容

[0005] 基于此,有必要提供一种能提高生成速度的图片生成方法。
[0006] 一种图片生成方法,包括:
[0007] 获取图层;
[0008] 获取机型参数,获取与所述机型参数对应的分辨率参数;
[0009] 根据所述分辨率参数调整所述图层的分辨率,并生成相应的图片。
[0010] 此外,还有必要提供一种能提高生成速度的图片生成装置。
[0011] 一种图片生成装置,包括:
[0012] 图层获取模块,用于获取图层;
[0013] 参数获取模块,用于获取机型参数,获取与所述机型参数对应的分辨率参数;
[0014] 图片输出模块,用于根据所述分辨率参数调整所述图层的分辨率,并生成相应的图片。
[0015] 上述图片生成方法,自动获取图像编辑软件运行时内存或存档文件中的图层,并根据预设的或用户选择的多种机型参数对应的分辨率参数批量生成图片,使得用户在处理多个图层时,不需要手动对每个图层进行输入分辨率参数的操作,从而简化了用户的操作步骤,提高了生成图片的速度。

附图说明

[0016] 图1为一个实施例中图片生成方法的流程图;
[0017] 图2为一个实施例中图层展示窗口的界面展示图;
[0018] 图3为一个实施例中输出类型标记选择框的界面展示图;
[0019] 图4为一个应用场景中参数选择界面展示图;
[0020] 图5为一个实施例中图片生成装置的结构示意图;
[0021] 图6为另一个实施例中图片生成装置的结构示意图。

具体实施方式

[0022] 在一个实施例中,如图1所示,一种图片生成方法,包括以下步骤:
[0023] 步骤S102,获取图层。
[0024] 图层为图像编辑软件(例如photoshop)中的编辑单元,由许多像素组成,图层通过上下叠加的方式可组成整个图像。
[0025] 在一个实施例中,可在图像编辑软件运行时的内存区域中读取图层。在本实施例所在的应用场景中,本方法基于图像编辑软件的插件实现。例如,可以是photeshop插件,该插件可通过调用photoshop的JS库的库函数定位photoshop应用程序运行时在内存中的数据区域,并从中读取图层对应的数据。
[0026] 在另一个实施例中,可通过读取存档文件获取图层。在本实施例所在的应用场景中,本方法基于以独立进程运行的计算机程序实现。例如,用户可通过图像编辑软件(如photoshop)设计好图层素材,然后将其存储为存档文件保存在硬盘上。该独立进程则可读取该用户保存的存档文件,并通过解析该存档文件获取图层。
[0027] 步骤S104,获取机型参数,获取与机型参数对应的分辨率参数。机型参数即移动终端的型号参数,例如,IOS、Android或WP7等平台参数,也可以是IPhone4/4S、IPhone5、小米2S和Galaxy4等具体的设备参数。与机型参数对应的分辨率参数为相应的移动终端屏幕分辨率的参数。例如,与IOS对应的分辨率参数可包括480×320(IOS普通屏)和960×640(IOS视网膜屏),与Android对应的分辨率参数可以是ldpi(Low Density Per inch,低精度分辨率,120dpi,3.5英寸屏上通常为320x240)分辨率、mdpi(Middle Density Per inch,中精度分辨率,160dpi,3.5英寸屏上通常为480x320)分辨率、hdpi(High Density Per inch,高精度分辨率,240dpi,4.0英寸屏上通常为480x800)分辨率、xhdpi(Extra High Density Per inch,超高精度分辨率,320dpi,4.7英寸屏上通常为1280x768)分辨率。
[0028] 在一个实施例中,机型参数和相应的分辨率参数可预先设置,并对应存储在配置文件中。可通过读取配置文件获取该预设的机型参数和分辨率参数。也就是说,可根据市面上多种制式的移动终端屏幕分辨率预设分辨率参数。
[0029] 在一个实施例中,还可获取选取的机型参数,获取配置文件中存储的与选取的机型参数对应的分辨率参数。例如,可将预设的多个机型参数以图标或者多选框的形式展示给用户,用户可通过勾选选择相应的机型参数输入。
[0030] 在另一个实施例中,还可直接获取输入的分辨率参数。例如,可通过文本框获取输入的自定义的分辨率大小,也可通过选择组件(radio button、下拉框、多选框等)获取选取的分辨率参数。
[0031] 步骤S106,根据分辨率参数调整图层的分辨率,并生成相应的图片。
[0032] 在本实施例中,获取到的图层可有多个,可先将获取到的图层的分辨率调整为与分辨率参数对应的分辨率,然后通过写操作输出多个图层为多个图片文件。
[0033] 在一个实施例中,获取图层的步骤可包括:获取图层组,根据图层组获取图层。
[0034] 如图2所示,图层组为图层的集合,为图像编辑软件中用于分类管理图层的组织单元。用户可通过仅对图层组输入设置参数来对该图层组所包含的所有图层输入设置参数。需要说明的是,用户在操作图像编辑软件时,生成的图层也可不属于任何图层组。本实施例中,可先获取不属于任何图层组的图层,然后再获取图层组,并获取图层组包含的图层。而在其他实施例中,获取图层的顺序可以是任意顺序。
[0035] 在本实施例中,获取图层的步骤之后还可获取图层对应的输出类型标记;根据输出类型标记筛选或合并图层。
[0036] 输出类型标记为标示图层是否被输出或其他输出方式的标识。在本实施例中,用户在使用图像编辑软件生成图层后,可在图层名称中添加输出类型标记。例如,在图2中,“-del”即为用于表示忽略输出的输出类型标记,不添加即为用于表示合并图层的标记。合并图层即为将具有相同合并图层标记的多个图层上下叠加成一个图层的操作,可通过调用图像编辑软件的库函数将其合成为新的图层。
[0037] 而在另一个实施例中,在通过读取存档文件获取图层之后,可展示获取到的图层,并通过展示界面获取输入的输出类型标记。用户可在展示界面上通过设置图层的名称来添加输出类型标记,也可以如图3所示,先选取图层,然后在预设的输出类型标记选择框中通过点击按钮来选择与选取的图层对应的输出类型标记。
[0038] 进一步的,获取图层对应的输出类型标记的步骤还包括:获取图层所属的图层组,获取图层组对应的输出类型标记,图层组对应的输出类型标记即图层组包含的图层对应的输出类型标记。
[0039] 在本实施例中,根据输出类型标记筛选或合并图层的步骤还包括:根据输出类型标记筛选图层组,获取筛选后得到的图层组中包含的图层,和/或根据输出类型标记合并图层组中包含的图层。
[0040] 通过输出类型标记对获取到的图层进行分类,根据分类筛选图层或合并图层,可使得用户在批量处理图层时可快速地选择图层,从而提高了操作效率,同时也提高了操作的便利性。
[0041] 也就是说,如图2所示,用户可通过对图层组添加输出类型标记来确定该图层组包含的图层所对应的输出方式。在基于插件方式运行的实施例中,如前所述,用户可通过设置图层组的名称来添加输出类型标记,即图2中所示方式。也可通过点击图3中所示的输出类型标记选择框中的图标为选取的图层组添加输出类型标记。而在基于独立进程方式运行的实施例中,同样如前所述,用户可在展示窗口中为图层组添加输出类型标记。
[0042] 在一个实施例中,生成相应的图片的步骤之前还可获取输入的文件名前缀。在本实施例中,生成相应的图片的步骤还包括:根据文件名前缀生成的图片的文件名。
[0043] 为输出的图片添加文件名前缀可方便用户区分该次图片生成操作生成了哪些文件,从而方便用户查找,提高了操作的便利性。
[0044] 在一个应用场景中,如图4所示,可通过图4中展示的界面获取用户输入。用户可在文本框中输入文件名前缀,在输出位置栏中选择生成的图片存放的位置,通过radio button输入选择的机型参数如图4中的IOS、Android和WP7,而配置文件中存储有与机型参数IOS、Android和WP7分别对应的分辨率参数,可通过读取配置文件获取相应的分辨率参数。用户还可通过勾选框添加输出类型标记(图4中即为对文本类型的图层添加了“忽略”的输出类型标记),通过勾选框选择是否生成输出报告。输出报告即图片生成过程的日志文件,可方便用户查看输出过程信息。用户在该界面上输入完毕后,点击确认,即可根据上述用户输入以及图层生成图片并存储到相应的输出位置。
[0045] 在一个实施例中,如图5所示,一种图片生成装置,包括:图层获取模块102、参数获取模块104以及图片输出模块106,其中:
[0046] 图层获取模块102,用于获取图层。
[0047] 图层为图像编辑软件(例如photoshop)中的编辑单元,由许多像素组成,图层通过上下叠加的方式可组成整个图像。
[0048] 在一个实施例中,图层获取模块102可用于在图像编辑软件运行时的内存区域中读取图层。在本实施例所在的应用场景中,本方法基于图像编辑软件的插件实现。例如,可以是photeshop插件,该插件可通过调用photoshop的JS库的库函数定位photoshop应用程序运行时在内存中的数据区域,并从中读取图层对应的数据。
[0049] 在另一个实施例中,图层获取模块102可用于通过读取存档文件获取图层。在本实施例所在的应用场景中,本方法基于以独立进程运行的计算机程序实现。例如,用户可通过图像编辑软件(如photoshop)设计好图层素材,然后将其存储为存档文件保存在硬盘上。该独立进程则可读取该用户保存的存档文件,并通过解析该存档文件获取图层。
[0050] 参数获取模块104,用于获取机型参数,获取与机型参数对应的分辨率参数。
[0051] 机型参数即移动终端的型号参数,例如,IOS、Android或WP7等平台参数,也可以是IPhone4/4S、IPhone5、小米2S和Galaxy4等具体的设备参数。与机型参数对应的分辨率参数为相应的移动终端屏幕分辨率的参数。例如,与IOS对应的分辨率参数可包括480×320(IOS普通屏)和960×640(IOS视网膜屏),与Android对应的分辨率参数可以是ldpi(Low Density Per inch,低精度分辨率,120dpi,3.5英寸屏上通常为320x240)分辨率、mdpi(Middle Density Per inch,中精度分辨率,160dpi,3.5英寸屏上通常为480x320)分辨率、hdpi(High Density Per inch,高精度分辨率,240dpi,4.0英寸屏上通常为480x800)分辨率、xhdpi(Extra High Density Per inch,超高精度分辨率,320dpi,4.7英寸屏上通常为1280x768)分辨率。
[0052] 在一个实施例中,机型参数和相应的分辨率参数可预先设置,并对应存储在配置文件中。参数获取模块104可用于通过读取配置文件获取该预设的机型参数和分辨率参数。也就是说,可根据市面上多种制式的移动终端屏幕分辨率预设分辨率参数。
[0053] 在一个实施例中,还可获取选取的机型参数,获取配置文件中存储的与选取的机型参数对应的分辨率参数。例如,可将预设的多个机型参数以图标或者多选框的形式展示给用户,用户可通过勾选选择相应的机型参数输入。
[0054] 在另一个实施例中,参数获取模块104还可用于直接获取输入的分辨率参数。例如,通过文本框获取输入的自定义的分辨率大小,也可通过选择组件(radio button、下拉框、多选框等)获取选取的分辨率参数。
[0055] 图片输出模块106,用于根据分辨率参数调整图层的分辨率,并生成相应的图片。
[0056] 在本实施例中,获取到的图层可有多个。图片输出模块106可用于先将获取到的图层的分辨率调整为与分辨率参数对应的分辨率,然后通过写操作输出多个图层为多个图片文件。
[0057] 在一个实施例中,图片输出模块106还可用于获取图层组,根据图层组获取图层。
[0058] 如图2所示,图层组为图层的集合,为图像编辑软件中用于分类管理图层的组织单元。用户可通过仅对图层组输入设置参数来对该图层组所包含的所有图层输入设置参数。需要说明的是,用户在操作图像编辑软件时,生成的图层也可不属于任何图层组。本实施例中,图片输出模块106还可用于先获取不属于任何图层组的图层,然后再获取图层组,并获取图层组包含的图层。而在其他实施例中,获取图层的顺序可以是任意顺序。
[0059] 在本实施例中,如图6所示,图片生成装置还包括图层分类模块108,用于获取图层对应的输出类型标记;根据输出类型标记筛选或合并图层。
[0060] 输出类型标记为标示图层是否被输出或其他输出方式的标识。在本实施例中,用户在使用图像编辑软件生成图层后,可在图层名称中添加输出类型标记。例如,在图2中,“-del”即为用于表示忽略输出的输出类型标记,不添加即为用于表示合并图层的标记。合并图层即为将具有相同合并图层标记的多个图层上下叠加成一个图层的操作,可通过调用图像编辑软件的库函数将其合成为新的图层。
[0061] 而在另一个实施例中,在通过读取存档文件获取图层之后,可展示获取到的图层,并通过展示界面获取输入的输出类型标记。用户可在展示界面上通过设置图层的名称来添加输出类型标记,也可以如图3所示,先选取图层,然后在预设的输出类型标记选择框中通过点击按钮来选择与选取的图层对应的输出类型标记。
[0062] 进一步的,图层分类模块108还用于获取图层所属的图层组,获取图层组对应的输出类型标记,图层组对应的输出类型标记即图层组包含的图层对应的输出类型标记。
[0063] 在本实施例中,图层分类模块108还用于根据输出类型标记筛选图层组,获取筛选后得到的图层组中包含的图层,和/或根据输出类型标记合并图层组中包含的图层。
[0064] 也就是说,如图2所示,用户可通过对图层组添加输出类型标记来确定该图层组包含的图层所对应的输出方式。在基于插件方式运行的实施例中,如前所述,用户可通过设置图层组的名称来添加输出类型标记,即图2中所示方式。也可通过点击图3中所示的输出类型标记选择框中的图标为选取的图层组添加输出类型标记。而在基于独立进程方式运行的实施例中,同样如前所述,用户可在展示窗口中为图层组添加输出类型标记。
[0065] 通过输出类型标记对获取到的图层进行分类,根据分类筛选图层或合并图层,可使得用户在批量处理图层时可快速地选择图层,从而提高了操作效率,同时也提高了操作的便利性。
[0066] 在一个实施例中,图片输出模块106还可用于获取输入的文件名前缀,根据文件名前缀生成的图片的文件名。
[0067] 为输出的图片添加文件名前缀可方便用户区分该次图片生成操作生成了哪些文件,从而方便用户查找,提高了操作的便利性。
[0068] 在一个应用场景中,如图4所示,可通过图4中展示的界面获取用户输入。用户可在文本框中输入文件名前缀,在输出位置栏中选择生成的图片存放的位置,通过radio button输入选择的机型参数如图4中的IOS、Android和WP7,而配置文件中存储有与机型参数IOS、Android和WP7分别对应的分辨率参数,可通过读取配置文件获取相应的分辨率参数。用户还可通过勾选框添加输出类型标记(图4中即为对文本类型的图层添加了“忽略”的输出类型标记),通过勾选框选择是否生成输出报告。输出报告即图片生成过程的日志文件,可方便用户查看输出过程信息。用户在该界面上输入完毕后,点击确认,即可根据上述用户输入以及图层生成图片并存储到相应的输出位置。
[0069] 上述图片生成方法,自动获取图像编辑软件运行时内存或存档文件中的图层,并根据获取到的预设的或用户选择的多种机型参数对应的分辨率参数批量生成图片,使得用户在处理多个图层时,不需要手动对每个图层进行输入分辨率参数的操作,从而简化了用户的操作步骤,提高了生成图片的速度。
[0070] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
[0071] 以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。