OFD文档页面中涂鸦笔迹的擦除方法及装置与流程
未命名
09-22
阅读:49
评论:0
ofd文档页面中涂鸦笔迹的擦除方法及装置
技术领域
1.本发明涉及电子文档处理技术领域,尤其涉及一种ofd文档页面中涂鸦笔迹的擦除方法及装置。
背景技术:
2.开放版式文档(open fixed-layout document,ofd)是一种电子文档格式,广泛应用于在金融、保险及政务等领域。
3.在现有的ofd文档技术中,涂鸦笔迹以线条形式存储,这种方式可以减小文件大小并提高渲染效率。但是,当涉及到擦除压感笔迹和按笔画擦除时,需要大量的计算和成熟的算法支持。对于擦除压感笔迹,需要考虑笔迹的粗细、颜色、透明度等因素,以及擦除的形状和大小等因素,才能得到准确的结果。而按笔画擦除则更加复杂,需要对每一笔的轨迹进行分析。因此,基于现有技术在ofd文档中擦除涂鸦笔迹的过程较为复杂,擦除效果差。
技术实现要素:
4.针对现有技术存在的问题,本发明提供一种ofd文档页面中涂鸦笔迹的擦除方法及装置。
5.本发明提供一种ofd文档页面中涂鸦笔迹的擦除方法,包括:获取当前ofd文档页面的页面大小,创建与所述当前ofd文档页面的页面大小相同且对齐的第一图层和第二图层;所述第一图层用于绘制历史笔迹,所述第二图层用于绘制当前笔画;在检测到用户在所述当前ofd文档页面中绘制涂鸦笔迹的情况下,针对所述涂鸦笔迹中的当前笔画,在所述第二图层上绘制所述当前笔画,将所述第二图层上所述当前笔画的笔画区域的笔画图片和对应的位置信息保存至所述当前ofd文档页面关联的笔画信息集合,清空所述第二图层,及在所述第一图层上绘制所述当前笔画;基于所述笔画信息集合中保存的笔画图片和对应的位置信息,响应于所述用户的擦除操作,将所述涂鸦笔迹中与所述擦除操作对应的像素清除,或者,将所述涂鸦笔迹中与所述擦除操作对应的笔画擦除。
6.根据本发明提供的一种ofd文档页面中涂鸦笔迹的擦除方法,所述将所述涂鸦笔迹中与所述擦除操作对应的像素清除,或者,将所述涂鸦笔迹中与所述擦除操作对应的笔画擦除,包括:基于所述当前ofd文档页面的页面大小,创建与所述当前ofd文档页面的页面大小相同且对齐的至少一个第三图层;所述涂鸦笔迹中的不同笔画分别对应不同的第三图层;基于所述笔画信息集合中保存的所有笔画的笔画图片对应的位置信息,将所述所有笔画的笔画图片分别绘制到对应的第三图层上;将各所述第三图层绘制并同步显示到终端的屏幕上;基于所述擦除操作对应的擦除坐标信息,确定各所述第三图层中与所述擦除坐标
信息相交的至少一个目标图层;基于所述擦除坐标信息及各所述目标图层,通过更新所述笔画信息集合,将所述涂鸦笔迹中与所述擦除操作对应的像素清除。
7.根据本发明提供的一种ofd文档页面中涂鸦笔迹的擦除方法,所述基于所述擦除坐标信息及各所述目标图层,通过更新所述笔画信息集合,将所述涂鸦笔迹中与所述擦除操作对应的像素清除,包括:分别将各所述目标图层中与所述擦除坐标信息对应的像素置为透明色;分别将各所述目标图层上的有效区域的笔画图片和对应的位置信息保存至所述笔画信息集合。
8.根据本发明提供的一种ofd文档页面中涂鸦笔迹的擦除方法,所述将各所述第三图层绘制并同步显示到终端的屏幕上,包括:通过画布canvas将各所述第三图层绘制并同步显示到所述屏幕上,及将各所述第三图层分别绑定到所述canvas,将擦除笔迹的混合模式设置为第一模式,所述第一模式用于指示将所述涂鸦笔迹中与所述擦除坐标信息相交的像素清除。
9.根据本发明提供的一种ofd文档页面中涂鸦笔迹的擦除方法,所述将所述涂鸦笔迹中与所述擦除操作对应的笔画擦除,包括:获取所述擦除操作对应的擦除坐标信息;在所述擦除坐标信息对应的位置处于至少一个笔画区域,且所述位置存在笔画像素的情况下,在所述笔画信息集合中删除各所述笔画区域对应的笔画图片。
10.本发明还提供一种ofd文档页面中涂鸦笔迹的擦除装置,包括:获取模块,用于获取当前ofd文档页面的页面大小,创建与所述当前ofd文档页面的页面大小相同且对齐的第一图层和第二图层;所述第一图层用于绘制历史笔迹,所述第二图层用于绘制当前笔画;处理模块,用于在用户在所述当前ofd文档页面中绘制涂鸦笔迹的情况下,针对所述涂鸦笔迹中的当前笔画,在所述第二图层上绘制所述当前笔画,将所述第二图层上所述当前笔画的笔画区域的笔画图片和对应的位置信息保存至所述当前ofd文档页面关联的笔画信息集合,清空所述第二图层,及在所述第一图层上绘制所述当前笔画;擦除模块,用于基于所述笔画信息集合中保存的笔画图片和对应的位置信息,响应于所述用户的擦除操作,将所述涂鸦笔迹中与所述擦除操作对应的像素清除,或者,将所述涂鸦笔迹中与所述擦除操作对应的笔画擦除。
11.根据本发明提供的一种ofd文档页面中涂鸦笔迹的擦除装置,所述擦除模块,具体用于:基于所述当前ofd文档页面的页面大小,创建与所述当前ofd文档页面的页面大小相同且对齐的至少一个第三图层;所述涂鸦笔迹中的不同笔画分别对应不同的第三图层;基于所述笔画信息集合中保存的所有笔画的笔画图片对应的位置信息,将所述所有笔画的笔画图片分别绘制到对应的第三图层上;将各所述第三图层绘制并同步显示到终端的屏幕上;基于所述擦除操作对应的擦除坐标信息,确定各所述第三图层中与所述擦除坐标信息相交的至少一个目标图层;
基于所述擦除坐标信息及各所述目标图层,通过更新所述笔画信息集合,将所述涂鸦笔迹中与所述擦除操作对应的像素清除。
12.本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述ofd文档页面中涂鸦笔迹的擦除方法。
13.本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述ofd文档页面中涂鸦笔迹的擦除方法。
14.本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述ofd文档页面中涂鸦笔迹的擦除方法。
15.本发明提供的ofd文档页面中涂鸦笔迹的擦除方法及装置,通过创建与当前ofd文档页面的页面大小相同且对齐的第一图层和第二图层,第一图层用于绘制历史笔迹,第二图层用于绘制当前笔画;在绘制涂鸦笔迹过程中,针对涂鸦笔迹中的当前笔画,在第二图层上绘制当前笔画,将第二图层上当前笔画的笔画区域的笔画图片和对应的位置信息保存至与当前ofd文档页面关联的笔画信息集合,清空第二图层,及在第一图层上绘制当前笔画;在执行擦除操作时,基于笔画信息集合中保存的笔画图片和对应的位置信息,将涂鸦笔迹中与擦除操作对应的像素清除,或将涂鸦笔迹中与擦除操作对应的笔画擦除,从而通过使用图像处理技术,实现支持不同的擦除需求,无需使用复杂的算法,不考虑笔迹的压感、粗细、颜色、透明度等因素,避免对线条路径直接进行处理,涂鸦笔迹的擦除过程简单,能够提高擦除效果。
附图说明
16.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
17.图1是本发明提供的ofd文档页面中涂鸦笔迹的擦除方法的流程示意图;图2是本发明提供的在ofd文档页面中绘制涂鸦笔迹的方法的流程示意图;图3是本发明提供的在ofd文档页面中按点擦除涂鸦的方法的流程示意图;图4是本发明提供的在ofd文档页面中按笔画擦除涂鸦的方法的流程示意图;图5为本发明提供的ofd文档页面中涂鸦笔迹的擦除装置的结构示意图;图6是本发明提供的电子设备的结构示意图。
具体实施方式
18.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
19.下面结合说明书附图描述本发明提供的ofd文档页面中涂鸦笔迹的擦除方法及装置。
20.图1是本发明提供的ofd文档页面中涂鸦笔迹的擦除方法的流程示意图,如图1所示,该方法包括步骤101-步骤103,其中:步骤101,获取当前ofd文档页面的页面大小,创建与当前ofd文档页面的页面大小相同且对齐的第一图层和第二图层;第一图层用于绘制历史笔迹,第二图层用于绘制当前笔画。
21.需要说明的是,本发明提供的ofd文档页面中涂鸦笔迹的擦除方法可适用于需要对ofd文档页面中涂鸦笔迹进行擦除操作的场景中。该方法的执行主体可以为ofd文档页面中涂鸦笔迹的擦除装置,例如电子设备、服务器或者该装置中的用于执行ofd文档页面中涂鸦笔迹的擦除方法的控制模块。电子设备可以包括手机、平板电脑或台式计算机。
22.可选地,通过解析ofd文档或当前ofd文档页面,可以得到当前ofd文档页面的页面大小,例如页面宽度、页面高度及页面的起始位置。若之前已经创建了上述第一图层和第二图层,则这里无需重复创建上述第一图层和第二图层。
23.第二图层用于绘制当前正在进行的笔画。第一图层例如为位图1(bitmap1),第二图层例如为位图2(bitmap2)。bitmap1和bitmap2与当前ofd文档页面的页面大小相同且对齐。
24.步骤102,在检测到用户在当前ofd文档页面中绘制涂鸦笔迹的情况下,针对涂鸦笔迹中的当前笔画,在第二图层上绘制当前笔画,将第二图层上当前笔画的笔画区域的笔画图片和对应的位置信息保存至当前ofd文档页面关联的笔画信息集合,清空第二图层,及在第一图层上绘制当前笔画。
25.可选地,当在当前ofd文档页面上,检测到用户手势或鼠标按下或持续移动时,根据用户手势或鼠标的移动轨迹,在第二图层上绘制涂鸦笔迹,并记录当前笔画的笔画区域(有效区域)的位置信息。
26.对于绘制进行中的当前笔画,当检测到用户手势抬起或鼠标抬起时,可以判定当前笔画的绘制动作已经完成。将当前笔画的笔画区域裁剪,并将其添加到当前ofd文档页面关联的笔画信息集合中。同时,将当前笔画绘制到第一图层上,并清空第二图层,准备下一次绘制。可选地,无需清空第二图层。
27.检测到用户手势或鼠标再次按下,开始绘制笔画时,重复步骤102,直到用户结束绘制。
28.可选地,将笔画信息集合保存到文档或其他存储介质中,以便后续使用或展示。
29.步骤103,基于笔画信息集合中保存的笔画图片和对应的位置信息,响应于用户的擦除操作,将涂鸦笔迹中与擦除操作对应的像素清除,或者,将涂鸦笔迹中与擦除操作对应的笔画擦除。
30.可选地,擦除操作的类型可以包括按点擦除及按笔画擦除。
31.当检测到用户针对当前ofd文档页面的擦除操作时,在按点擦除的情形下,基于笔画信息集合中保存的笔画图片和对应的位置信息,将涂鸦笔迹中与擦除操作对应的像素清除。
32.或者,当检测到用户针对当前ofd文档页面的擦除操作时,在按笔画擦除的情形下,获取所述擦除操作对应的擦除坐标信息;在所述擦除坐标信息对应的位置处于至少一个笔画区域,且所述位置存在笔画像素的情况下,在所述笔画信息集合中删除各所述笔画
区域对应的笔画图片。
33.本发明提供的ofd文档页面中涂鸦笔迹的擦除方法,通过创建与当前ofd文档页面的页面大小相同且对齐的第一图层和第二图层,第一图层用于绘制历史笔迹,第二图层用于绘制当前笔画;在绘制涂鸦笔迹过程中,针对涂鸦笔迹中的当前笔画,在第二图层上绘制当前笔画,将第二图层上当前笔画的笔画区域的笔画图片和对应的位置信息保存至与当前ofd文档页面关联的笔画信息集合,清空第二图层,及在第一图层上绘制当前笔画;在执行擦除操作时,基于笔画信息集合中保存的笔画图片和对应的位置信息,将涂鸦笔迹中与擦除操作对应的像素清除,或将涂鸦笔迹中与擦除操作对应的笔画擦除,从而通过使用图像处理技术,实现支持不同的擦除需求,无需使用复杂的算法,不考虑笔迹的压感、粗细、颜色、透明度等因素,避免对线条路径直接进行处理,涂鸦笔迹的擦除过程简单,能够提高擦除效果。
34.可选地,所述将所述涂鸦笔迹中与所述擦除操作对应的像素清除,或者,将所述涂鸦笔迹中与所述擦除操作对应的笔画擦除的实现方式,可以包括如下步骤:步骤a、基于所述当前ofd文档页面的页面大小,创建与所述当前ofd文档页面的页面大小相同且对齐的至少一个第三图层;所述涂鸦笔迹中的不同笔画分别对应不同的第三图层;可选地,当检测到用户手势或鼠标按下时,从当前ofd文档或当前ofd文档页面中读取所述笔画信息集合中保存的所有笔画的笔画图片对应的位置信息;获取当前ofd文档页面的页面大小,例如页面宽度、页面高度与页面起始位置。生成与涂鸦笔迹包括的笔画数相同的第三图层,这些第三图层与当前ofd文档页面的页面大小相同并对齐。每个笔画唯一对应一个第三图层。
35.步骤b、基于所述笔画信息集合中保存的所有笔画的笔画图片对应的位置信息,将所述所有笔画的笔画图片分别绘制到对应的第三图层上;步骤c、将各所述第三图层绘制并同步显示到终端的屏幕上;步骤d、基于所述擦除操作对应的擦除坐标信息,确定各所述第三图层中与所述擦除坐标信息相交的至少一个目标图层;步骤e、基于所述擦除坐标信息及各所述目标图层,通过更新所述笔画信息集合,将所述涂鸦笔迹中与所述擦除操作对应的像素清除。
36.当检测到用户针对当前ofd文档页面的擦除操作时,通过创建与当前ofd文档页面的页面大小相同且对齐的至少一个第三图层,将所有笔画的笔画图片分别绘制到对应的第三图层上,将各第三图层绘制并同步显示到终端的屏幕上,然后基于擦除操作对应的擦除坐标信息,从各第三图层中选择确定与擦除坐标信息相交的至少一个目标图层,基于擦除坐标信息及各目标图层,更新笔画信息集合,以将涂鸦笔迹中与擦除操作对应的像素清除。
37.可选地,在按点擦除的情形下,所述基于所述擦除坐标信息及各所述目标图层,通过更新所述笔画信息集合,将所述涂鸦笔迹中与所述擦除操作对应的像素清除的实现方式可以包括如下步骤:步骤1、分别将各所述目标图层中与所述擦除坐标信息对应的像素置为透明色,以更新目标图层;针对每个更新后的目标图层,获取更新后的目标图层上笔画的有效区域的笔画图片及对应的位置信息;
步骤2、分别将各所述目标图层上的有效区域的笔画图片和对应的位置信息保存至所述笔画信息集合。
38.可选地,所述将各所述第三图层绘制并同步显示到终端的屏幕上,包括:通过画布(canvas)将各所述第三图层绘制并同步显示到所述屏幕上,及将各所述第三图层分别绑定到所述canvas,将擦除笔迹的混合模式设置为第一模式,所述第一模式用于指示将所述涂鸦笔迹中与所述擦除坐标信息相交的像素清除。实际中,第一模式例如可以包括porterduff.mode.clear。
39.可选地,在按笔画擦除的情形下,所述将所述涂鸦笔迹中与所述擦除操作对应的笔画擦除,包括如下步骤:步骤1)、获取所述擦除操作对应的擦除坐标信息;步骤2)、在所述擦除坐标信息对应的位置处于至少一个笔画区域,且所述位置存在笔画像素的情况下,在所述笔画信息集合中删除各所述笔画区域对应的笔画图片。
40.图2是本发明提供的在ofd文档页面中绘制涂鸦笔迹的方法的流程示意图,如图2所示,该方法包括步骤201-步骤206,其中:步骤201、用户通过鼠标或者触屏等的输入终端进行绘制,当检测到用户手势按下或鼠标被按下,即按下事件被触发后,获取当前ofd文档页面的宽度、高度和起始位置;步骤202、生成两个与当前ofd文档页面相同大小并对齐的位图,例如bitmap1和bitmap2,bitmap1用于绘制历史笔迹,bitmap2用于绘制当前正在进行的笔迹。创建当前笔画的区域对象boxrect,将屏幕坐标转换成文档坐标,并通过boxrect.union(point.x, point.y)管理按下的坐标点,输出结果是包含所有笔迹移动点的最小矩形区域,即笔画的有效区域;步骤203、当检测到用户手势按下或移动或鼠标被按下或移动,即针对鼠标或者触屏的按下或移动事件被触发后,将屏幕坐标转换成文档坐标,将涂鸦笔迹绘制到bitmap2上,以达到所绘内容与原本所在的文档位置一致,并通过boxrect.union(point.x,point.y)管理移动的坐标点,计算绘制内容(即笔画)的有效范围;步骤204、当检测到用户手势抬起或鼠标被抬起,即针对鼠标或者触屏的针对鼠标或者触屏的抬起事件被触发后,认为一个笔画动作完成,将笔画按笔画区域或有效区域boxrect裁剪后,得到裁剪后的笔画图片,将裁剪后的笔画图片和对应的boxrect保存到历史集合中,即笔画图片和对应的位置信息保存至笔画信息集合中,同时,将该笔画绘制到bitmap1上,并清空bitmap2,准备下一次绘制;步骤205、检测到用户手势按下或鼠标被按下,即针对鼠标或者触屏的按下事件触发后,判定用户已开始绘制新的笔画,再次执行步骤203-205;步骤206、将笔画集合和对应的位置信息保存到文档或其他存储介质中,以便后续使用或展示。
41.图3是本发明提供的在ofd文档页面中按点擦除涂鸦的方法的流程示意图,如图3所示,该方法包括步骤301-步骤307,其中:步骤301、当检测到用户手势按下或鼠标被按下,即针对鼠标或者触屏的按下事件被触发后,从文档中读取笔画图片和位置信息,获取当前ofd文档页面的宽高与起始位置;步骤302、生成与笔画数相同的bitmap,这些bitmap与当前ofd文档页面大小相同
并对齐;步骤303、将笔画图片分别绘制到对应的bitmap上;步骤304、通过canvas将bitmap绘制并同步显示到屏幕;步骤305、将bitmap各自都绑定到一个新的canvas上,并将擦除paint的混合模式设置为porterduff.mode.clear;步骤306、用户手势移动时,将点画到每个bitmap上,相交的像素被置为透明色,从而实现擦除效果;步骤307、按有效区域重新裁剪笔画图片,保存回文档。
42.图4是本发明提供的在ofd文档页面中按笔画擦除涂鸦的方法的流程示意图,如图4所示,该方法包括步骤401-步骤403,其中:步骤401、当检测到用户手势按下或鼠标被按下,即针对鼠标或者触屏的按下事件被触发后,通过对按下坐标与各个笔画区域做交集;步骤402、判断该坐标处于某笔画区域且该坐标所处位置存在笔迹像素;步骤403、在该坐标是否处于某笔画区域且该坐标所处位置存在笔迹像素时,删除该笔画所对应的笔画图片,实现按笔画擦除的效果。
43.本发明提供的ofd文档页面中涂鸦笔迹的擦除方法,不需要考虑涂鸦的笔迹是否带压感、粗细、颜色、透明度这些影响因素,都是一致性操作。其中,按点擦除的方法,兼容考虑并解决了重叠的笔画拆分困难的问题;将较为复杂的按笔画删除的复杂度大大简化。可以在保证擦除涂鸦笔迹的效率的同时减少计算量,也可以在不影响擦除效果的情况下,保证擦除速度。
44.下面对本发明提供的ofd文档页面中涂鸦笔迹的擦除装置进行描述,下文描述的ofd文档页面中涂鸦笔迹的擦除装置与上文描述的ofd文档页面中涂鸦笔迹的擦除方法可相互对应参照。
45.图5为本发明提供的ofd文档页面中涂鸦笔迹的擦除装置的结构示意图,如图5所示,该ofd文档页面中涂鸦笔迹的擦除装置500包括:获取模块501、处理模块502及擦除模块503;其中,获取模块501,用于获取当前ofd文档页面的页面大小,创建与所述当前ofd文档页面的页面大小相同且对齐的第一图层和第二图层;所述第一图层用于绘制历史笔迹,所述第二图层用于绘制当前笔画;处理模块502,用于在用户在所述当前ofd文档页面中绘制涂鸦笔迹的情况下,针对所述涂鸦笔迹中的当前笔画,在所述第二图层上绘制所述当前笔画,将所述第二图层上所述当前笔画的笔画区域的笔画图片和对应的位置信息保存至所述当前ofd文档页面关联的笔画信息集合,清空所述第二图层,及在所述第一图层上绘制所述当前笔画;擦除模块503,用于基于所述笔画信息集合中保存的笔画图片和对应的位置信息,响应于所述用户的擦除操作,将所述涂鸦笔迹中与所述擦除操作对应的像素清除,或者,将所述涂鸦笔迹中与所述擦除操作对应的笔画擦除。
46.本发明提供的ofd文档页面中涂鸦笔迹的擦除装置,通过创建与当前ofd文档页面的页面大小相同且对齐的第一图层和第二图层,第一图层用于绘制历史笔迹,第二图层用于绘制当前笔画;在绘制涂鸦笔迹过程中,针对涂鸦笔迹中的当前笔画,在第二图层上绘制
当前笔画,将第二图层上当前笔画的笔画区域的笔画图片和对应的位置信息保存至与当前ofd文档页面关联的笔画信息集合,清空第二图层,及在第一图层上绘制当前笔画;在执行擦除操作时,基于笔画信息集合中保存的笔画图片和对应的位置信息,将涂鸦笔迹中与擦除操作对应的像素清除,或将涂鸦笔迹中与擦除操作对应的笔画擦除,从而通过使用图像处理技术,实现支持不同的擦除需求,无需使用复杂的算法,不考虑笔迹的压感、粗细、颜色、透明度等因素,避免对线条路径直接进行处理,涂鸦笔迹的擦除过程简单,能够提高擦除效果。
47.可选地,所述擦除模块503,具体用于:基于所述当前ofd文档页面的页面大小,创建与所述当前ofd文档页面的页面大小相同且对齐的至少一个第三图层;所述涂鸦笔迹中的不同笔画分别对应不同的第三图层;基于所述笔画信息集合中保存的所有笔画的笔画图片对应的位置信息,将所述所有笔画的笔画图片分别绘制到对应的第三图层上;将各所述第三图层绘制并同步显示到终端的屏幕上;基于所述擦除操作对应的擦除坐标信息,确定各所述第三图层中与所述擦除坐标信息相交的至少一个目标图层;基于所述擦除坐标信息及各所述目标图层,通过更新所述笔画信息集合,将所述涂鸦笔迹中与所述擦除操作对应的像素清除。
48.可选地,所述擦除模块503,具体用于:分别将各所述目标图层中与所述擦除坐标信息对应的像素置为透明色;分别将各所述目标图层上的有效区域的笔画图片和对应的位置信息保存至所述笔画信息集合。
49.可选地,所述擦除模块503,具体用于:通过画布canvas将各所述第三图层绘制并同步显示到所述屏幕上,及将各所述第三图层分别绑定到所述canvas,将擦除笔迹的混合模式设置为第一模式,所述第一模式用于指示将所述涂鸦笔迹中与所述擦除坐标信息相交的像素清除。
50.可选地,所述擦除模块503,具体用于:获取所述擦除操作对应的擦除坐标信息;在所述擦除坐标信息对应的位置处于至少一个笔画区域,且所述位置存在笔画像素的情况下,在所述笔画信息集合中删除各所述笔画区域对应的笔画图片。
51.图6示例了一种电子设备的实体结构示意图,如图6所示,该电子设备可以包括:处理器(processor)610、通信接口(communications interface)620、存储器(memory)630和通信总线640,其中,处理器610,通信接口620,存储器630通过通信总线640完成相互间的通信。处理器610可以调用存储器630中的逻辑指令,以执行ofd文档页面中涂鸦笔迹的擦除方法,该方法包括:获取当前ofd文档页面的页面大小,创建与所述当前ofd文档页面的页面大小相同且对齐的第一图层和第二图层;所述第一图层用于绘制历史笔迹,所述第二图层用于绘制当前笔画;在检测到用户在所述当前ofd文档页面中绘制涂鸦笔迹的情况下,针对所述涂鸦笔迹中的当前笔画,在所述第二图层上绘制所述当前笔画,将所述第二图层上所述当前笔画的笔画区域的笔画图片和对应的位置信息保存至所述当前ofd文档页面关联的笔画信息
集合,清空所述第二图层,及在所述第一图层上绘制所述当前笔画;基于所述笔画信息集合中保存的笔画图片和对应的位置信息,响应于所述用户的擦除操作,将所述涂鸦笔迹中与所述擦除操作对应的像素清除,或者,将所述涂鸦笔迹中与所述擦除操作对应的笔画擦除。
52.此外,上述的存储器630中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
53.另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的ofd文档页面中涂鸦笔迹的擦除方法,该方法包括:获取当前ofd文档页面的页面大小,创建与所述当前ofd文档页面的页面大小相同且对齐的第一图层和第二图层;所述第一图层用于绘制历史笔迹,所述第二图层用于绘制当前笔画;在检测到用户在所述当前ofd文档页面中绘制涂鸦笔迹的情况下,针对所述涂鸦笔迹中的当前笔画,在所述第二图层上绘制所述当前笔画,将所述第二图层上所述当前笔画的笔画区域的笔画图片和对应的位置信息保存至所述当前ofd文档页面关联的笔画信息集合,清空所述第二图层,及在所述第一图层上绘制所述当前笔画;基于所述笔画信息集合中保存的笔画图片和对应的位置信息,响应于所述用户的擦除操作,将所述涂鸦笔迹中与所述擦除操作对应的像素清除,或者,将所述涂鸦笔迹中与所述擦除操作对应的笔画擦除。
54.又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的ofd文档页面中涂鸦笔迹的擦除方法,该方法包括:获取当前ofd文档页面的页面大小,创建与所述当前ofd文档页面的页面大小相同且对齐的第一图层和第二图层;所述第一图层用于绘制历史笔迹,所述第二图层用于绘制当前笔画;在检测到用户在所述当前ofd文档页面中绘制涂鸦笔迹的情况下,针对所述涂鸦笔迹中的当前笔画,在所述第二图层上绘制所述当前笔画,将所述第二图层上所述当前笔画的笔画区域的笔画图片和对应的位置信息保存至所述当前ofd文档页面关联的笔画信息集合,清空所述第二图层,及在所述第一图层上绘制所述当前笔画;基于所述笔画信息集合中保存的笔画图片和对应的位置信息,响应于所述用户的擦除操作,将所述涂鸦笔迹中与所述擦除操作对应的像素清除,或者,将所述涂鸦笔迹中与所述擦除操作对应的笔画擦除。
55.以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
56.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
57.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
技术特征:
1.一种开放版式文档ofd文档页面中涂鸦笔迹的擦除方法,其特征在于,包括:获取当前ofd文档页面的页面大小,创建与所述当前ofd文档页面的页面大小相同且对齐的第一图层和第二图层;所述第一图层用于绘制历史笔迹,所述第二图层用于绘制当前笔画;在检测到用户在所述当前ofd文档页面中绘制涂鸦笔迹的情况下,针对所述涂鸦笔迹中的当前笔画,在所述第二图层上绘制所述当前笔画,将所述第二图层上所述当前笔画的笔画区域的笔画图片和对应的位置信息保存至所述当前ofd文档页面关联的笔画信息集合,清空所述第二图层,及在所述第一图层上绘制所述当前笔画;基于所述笔画信息集合中保存的笔画图片和对应的位置信息,响应于所述用户的擦除操作,将所述涂鸦笔迹中与所述擦除操作对应的像素清除,或者,将所述涂鸦笔迹中与所述擦除操作对应的笔画擦除。2.根据权利要求1所述的ofd文档页面中涂鸦笔迹的擦除方法,其特征在于,所述将所述涂鸦笔迹中与所述擦除操作对应的像素清除,包括:基于所述当前ofd文档页面的页面大小,创建与所述当前ofd文档页面的页面大小相同且对齐的至少一个第三图层;所述涂鸦笔迹中的不同笔画分别对应不同的第三图层;基于所述笔画信息集合中保存的所有笔画的笔画图片对应的位置信息,将所述所有笔画的笔画图片分别绘制到对应的第三图层上;将各所述第三图层绘制并同步显示到终端的屏幕上;基于所述擦除操作对应的擦除坐标信息,确定各所述第三图层中与所述擦除坐标信息相交的至少一个目标图层;基于所述擦除坐标信息及各所述目标图层,通过更新所述笔画信息集合,将所述涂鸦笔迹中与所述擦除操作对应的像素清除。3.根据权利要求2所述的ofd文档页面中涂鸦笔迹的擦除方法,其特征在于,所述基于所述擦除坐标信息及各所述目标图层,通过更新所述笔画信息集合,将所述涂鸦笔迹中与所述擦除操作对应的像素清除,包括:分别将各所述目标图层中与所述擦除坐标信息对应的像素置为透明色;分别将各所述目标图层上的有效区域的笔画图片和对应的位置信息保存至所述笔画信息集合。4.根据权利要求2所述的ofd文档页面中涂鸦笔迹的擦除方法,其特征在于,所述将各所述第三图层绘制并同步显示到终端的屏幕上,包括:通过画布canvas将各所述第三图层绘制并同步显示到所述屏幕上,及将各所述第三图层分别绑定到所述canvas,将擦除笔迹的混合模式设置为第一模式,所述第一模式用于指示将所述涂鸦笔迹中与所述擦除坐标信息相交的像素清除。5.根据权利要求1所述的ofd文档页面中涂鸦笔迹的擦除方法,其特征在于,所述将所述涂鸦笔迹中与所述擦除操作对应的笔画擦除,包括:获取所述擦除操作对应的擦除坐标信息;在所述擦除坐标信息对应的位置处于至少一个笔画区域,且所述位置存在笔画像素的情况下,在所述笔画信息集合中删除各所述笔画区域对应的笔画图片。6.一种ofd文档页面中涂鸦笔迹的擦除装置,其特征在于,包括:
获取模块,用于获取当前ofd文档页面的页面大小,创建与所述当前ofd文档页面的页面大小相同且对齐的第一图层和第二图层;所述第一图层用于绘制历史笔迹,所述第二图层用于绘制当前笔画;处理模块,用于在用户在所述当前ofd文档页面中绘制涂鸦笔迹的情况下,针对所述涂鸦笔迹中的当前笔画,在所述第二图层上绘制所述当前笔画,将所述第二图层上所述当前笔画的笔画区域的笔画图片和对应的位置信息保存至所述当前ofd文档页面关联的笔画信息集合,清空所述第二图层,及在所述第一图层上绘制所述当前笔画;擦除模块,用于基于所述笔画信息集合中保存的笔画图片和对应的位置信息,响应于所述用户的擦除操作,将所述涂鸦笔迹中与所述擦除操作对应的像素清除,或者,将所述涂鸦笔迹中与所述擦除操作对应的笔画擦除。7.根据权利要求6所述的ofd文档页面中涂鸦笔迹的擦除装置,其特征在于,所述擦除模块,具体用于:基于所述当前ofd文档页面的页面大小,创建与所述当前ofd文档页面的页面大小相同且对齐的至少一个第三图层;所述涂鸦笔迹中的不同笔画分别对应不同的第三图层;基于所述笔画信息集合中保存的所有笔画的笔画图片对应的位置信息,将所述所有笔画的笔画图片分别绘制到对应的第三图层上;将各所述第三图层绘制并同步显示到终端的屏幕上;基于所述擦除操作对应的擦除坐标信息,确定各所述第三图层中与所述擦除坐标信息相交的至少一个目标图层;基于所述擦除坐标信息及各所述目标图层,通过更新所述笔画信息集合,将所述涂鸦笔迹中与所述擦除操作对应的像素清除。8.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5任一项所述ofd文档页面中涂鸦笔迹的擦除方法。9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述ofd文档页面中涂鸦笔迹的擦除方法。
技术总结
本发明提供一种OFD文档页面中涂鸦笔迹的擦除方法及装置,涉及电子文档处理技术领域,其中方法包括:获取当前OFD文档页面的页面大小,创建与当前OFD文档页面的页面大小相同且对齐的第一图层和第二图层;在检测到绘制涂鸦笔迹的情况下,针对涂鸦笔迹中的当前笔画,在第二图层上绘制当前笔画,将第二图层上当前笔画的笔画区域的笔画图片和对应的位置信息保存至当前OFD文档页面关联的笔画信息集合,清空第二图层,及在第一图层上绘制当前笔画;基于笔画信息集合中保存的笔画图片和对应的位置信息,将涂鸦笔迹中与擦除操作对应的像素清除,或将涂鸦笔迹中与擦除操作对应的笔画擦除。本发明支持不同的擦除需求,提高擦除效果。提高擦除效果。提高擦除效果。
技术研发人员:田淑新 康凯 方俊
受保护的技术使用者:福昕鲲鹏(北京)信息科技有限公司
技术研发日:2023.08.21
技术公布日:2023/9/20
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
航空商城 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/