本发明涉及基于移动操作系统的图片处理领域,具体涉及一种基于移动操作系统图片编辑的图片生成方法。
背景技术:
随着移动终端的普及以及其功能的丰富,用户每天沉浸在移动终端的时间越来越多,用户可以通过移动终端完成多种操作,比如拍照、编辑图片等。
现有技术中,用户在对图片进行编辑时,移动操作系统中的图片编辑程序会对编辑视图进行截图的方式生成图片并保存,这样做比较方便,所见即所得。但受限于编辑视图的尺寸,编辑后生成的图片与编辑视图一样大小,无法生成高清图。
有鉴于此,本发明人针对上述移动终端图片编辑存在的问题而深入构思,遂有本案产生。
技术实现要素:
针对现有技术存在的问题,本发明的目的在于提供一种基于移动操作系统图片编辑的图片生成方法,其能够生成高清图片。
为实现上述目的,本发明采用的技术方案是:
一种基于移动操作系统图片编辑的图片生成方法,其包括:
步骤1、加载由高清图按缩放比scale缩小得到的预览图,将其交给编辑视图内的前台渲染器进行渲染,从而展示给使用者;
步骤2、通过交互的方式,通过编辑器对编辑视图进行编辑,添加新的文字和图片等编辑元素;
获取编辑元素信息,编辑元素信息包括编辑元素的大小、位置、旋转方向;编辑器根据编辑元素信息触发编辑视图更新,进行编辑元素的渲染,编辑元素的渲染位置和大小也根据预览图的缩放比scale进行缩放;
步骤3、交互完成后,采用后台渲染器,并根据步骤2产生的编辑元素信息对高清图的原图进行渲染,生成高清图。
所述步骤3具体如下:
开启一个后台线程,创建一个后台渲染器;创建一个与高清图一样大小的结果位图;
加载高清图位图到内存,将高清图位图渲染到结果位图上,然后回收高清图位图;
接着,根据编辑元素尺寸,加载渲染编辑元素所需的位图及对象;根据编辑元素位置,将元素的位图及对象会合成到结果位图上,实现编辑元素对结果位图的渲染;回收绘制编辑元素时加载的位图及对象;
当所有编辑元素均已渲染到结果位图上,将结果位图保存成图片文件,回收结果位图,保存的图片即为编辑后生成的高清图。
采用上述方案后,本发明通过前后台分离渲染来实现移动端高清图的编辑与生成。首先,加载由高清图原图缩小得到的预览图,交给编辑视图进行渲染;用户对渲染后的预览图进行编辑,产生编辑元素信息,该编辑元素按照等比缩小后的尺寸进行渲染,以起到编辑时节省运行内存的效果;生成图片时,先在后台渲染高清图原图,再根据编辑元素的原始尺寸进行渲染,从而生成高清图。且后台渲染过程中不影响前台渲染和操作,前台仍可继续进行编辑,以达到高效作图的效果。
具体实施方式
本发明揭示了一种基于移动操作系统图片编辑的图片生成方法,其包括以下步骤:
步骤1、加载由高清图缩小得到的预览图,将其交给编辑视图内的前台渲染器进行渲染,从而展示给使用者。
高清图宽记为imgwidth,高记为imgheight;编辑视图宽记为viewwidth,高记为viewheight;预览图缩放比记为scale,宽记为width,高记为height。预览图的缩放比、宽高计算公式如下:
scale=min(viewwidth/imgwidth,viewheight/imgheight)
width=scale*imgwidth
height=scale*imgheight
步骤2、通过交互的方式,通过编辑器对编辑视图进行编辑,添加新的文字和图片等编辑元素;获取编辑元素信息;编辑元素信息包括编辑元素的大小、位置、旋转方向等。
编辑器根据编辑元素信息触发编辑视图更新,进行编辑元素的渲染,编辑元素的渲染位置和大小也根据预览图的缩放比scale进行缩放。
其中,编辑元素位置通过左边距和上边距确定,左边距记为elementleft,上边距记为elementtop。元素宽记为elementwidth,元素高记为elementheight。元素缩放后的大小及位置计算公式如下:
元素缩放后左边距left=elementleft*scale;
元素缩放后上边距top=elementtop*scale;
元素缩放后宽width=elementwidth*scale;
元素缩放后高height=elementheight*scale。
通过与编辑视图交互的方式,可对编辑器内已添加的编辑元素的位置、大小和旋转方向等信息进行改变,然后编辑器再触发编辑视图更新,更新指定元素的渲染。
步骤3、交互完成后,采用后台渲染器,并根据步骤2产生的编辑元素信息对高清图的原图进行渲染,生成高清图。
具体地,首先,开启一个后台线程,创建一个后台渲染器;创建一个与高清图一样大小的结果位图。
其次,加载高清图位图到内存,将高清图位图渲染到结果位图上,然后回收高清图位图。
接着,根据编辑元素尺寸,加载渲染编辑元素所需的位图及对象;根据编辑元素位置,将元素的位图及对象会合成到结果位图上,实现编辑元素对结果位图的渲染;回收绘制编辑元素时加载的位图及对象。
当所有编辑元素均已渲染到结果位图上,将结果位图保存成图片文件,回收结果位图,保存的图片即为编辑后生成的高清图。
上述后台渲染器对高清图原图的渲染过程不影响前台渲染器和视图编辑器的运行。
本发明的关键在于,本发明通过前后台分离渲染来实现移动端高清图的编辑与生成。首先,加载由高清图原图缩小得到的预览图,交给编辑视图进行渲染;用户对渲染后的预览图进行编辑,产生编辑元素信息,该编辑元素按照等比缩小后的尺寸进行渲染,以起到编辑时节省运行内存的效果;生成图片时,先在后台渲染高清图原图,再根据编辑元素的原始尺寸进行渲染,从而生成高清图。
后台渲染过程中不影响前台渲染和操作,前台仍可继续进行编辑,以达到高效作图的效果。
以上所述仅为本发明实施实例,并不用以限制本发明,凡在本发明的精神和原则之内的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
1.一种基于移动操作系统图片编辑的图片生成方法,其特征在于:所述图片生成方法包括:
步骤1、加载由高清图按缩放比scale缩小得到的预览图,将其交给编辑视图内的前台渲染器进行渲染,从而展示给使用者;
步骤2、通过交互的方式,通过编辑器对编辑视图进行编辑,添加编辑元素;
获取编辑元素信息,编辑元素信息包括编辑元素的大小、位置、旋转方向;编辑器根据编辑元素信息触发编辑视图更新,进行编辑元素的渲染,编辑元素的渲染位置和大小也根据预览图的缩放比scale进行缩放;
步骤3、交互完成后,采用后台渲染器,并根据步骤2产生的编辑元素信息对高清图的原图进行渲染,生成高清图。
2.根据权利要求1所述的一种基于移动操作系统图片编辑的图片生成方法,其特征在于:所述步骤3具体如下:
开启一个后台线程,创建一个后台渲染器;创建一个与高清图一样大小的结果位图;
加载高清图位图到内存,将高清图位图渲染到结果位图上,然后回收高清图位图;
接着,根据编辑元素尺寸,加载渲染编辑元素所需的位图及对象;根据编辑元素位置,将元素的位图及对象会合成到结果位图上,实现编辑元素对结果位图的渲染;回收绘制编辑元素时加载的位图及对象;
当所有编辑元素均已渲染到结果位图上,将结果位图保存成图片文件,回收结果位图,保存的图片即为编辑后生成的高清图。