OFD文档文字水印方法动态设置方法与系统与流程
本发明涉及文档处理领域,特别涉及ofd文档文字水印方法动态设置方法与系统。
背景技术:
1、开放固定版式文档(open fixed-layout document,ofd)作为一种国家标准格式文档,主要用于电子公文等正式场景。ofd文档的展示方式主要包括:第一种方式是通过服务器预先将ofd文档解析并转换为图片或canvas、svg等图形格式,再通过网络逐页加载并展示;第二种方式是通过浏览器对ofd文档进行解析,并通过canvas绘制方式在浏览器页面展示文档内容。当通过服务器解析并逐页加载时,浏览器在用户浏览文档过程中需要频繁进行网络数据交互,对网络环境依赖性较强。当采用canvas绘制方式时,文档页面中的文本、图形和水印等元素均被绘制为图形内容,导致水印内容无法单独控制或动态更新。在canvas绘制模式下,一旦需要修改水印内容,通常需要重新绘制整个页面,造成较大的性能开销。此外现有ofd文档标准并未定义专门的水印元素在浏览器难以实现水印灵活变更控制。因此如何在浏览器环境中实现ofd文档的文字水印动态设置,避免对页面内容进行整体重绘,成为前期亟需解决的技术问题。
技术实现思路
1、考虑到现有ofd文档展示方式在浏览器环境中执行ofd文档的文字水印动态设置需要对页面内容进行整体重绘,降低文字水印更新效率和增加浏览器资源消耗。
2、鉴于上述问题,本发明提供了ofd文档文字水印方法动态设置方法,包括:
3、在浏览器环境加载ofd文档,并从所述ofd文档解析提取文档页面结构信息;根据所述文档页面结构信息,生成html页面元素集合;
4、根据所述ofd文档的文档对象模型和所述html页面元素集合,构建用于显示水印的html5 text元素;
5、设置所述html5 text元素的配置参数,将所述html5 text元素叠加显示于所述ofd文档页面,从而形成文字水印;
6、根据水印变更请求,确定水印变更目标内容;根据所述水印变更目标内容,修改所述html5 text元素属性,从而改变文字水印。
7、可选地,在浏览器环境加载ofd文档,并从所述ofd文档解析提取文档页面结构信息;根据所述文档页面结构信息,生成html页面元素集合,包括:
8、获取浏览器环境当前加载任务执行进程,根据所述加载任务执行进程,确定所述浏览器环境的加载任务变更时机;根据所述加载任务变更时机,将ofd文档转换成加载任务后添加至加载任务队列;
9、对所述ofd文档进行页面结构识别,得到页面结构元素映射信息;其中,所述页面结构元素映射信息包括所述ofd文档中每个页面包含所有结构元素种类及其所在位置的映射关系;
10、构建所述ofd文档的文档对象模型,根据所述页面结构元素映射信息,在所述文档对象模型生成html页面元素集合;其中,所述html页面元素集合包括所述ofd文档下属每个结构元素对应在html页面场景转换后的元素集合。
11、可选地,根据所述ofd文档的文档对象模型和所述html页面元素集合,构建用于显示水印的html5 text元素,包括:
12、从所述ofd文档的文档对象模型提取所述html页面元素集合,对所述html页面元素集合进行元素种类区分,得到若干html页面元素子集合;其中,每个html页面元素子集合下属所有html页面元素具有相同的元素种类属性;
13、根据每个html页面元素子集合对应元素种类属性,对每个html页面元素子集合下属所有html页面元素进行文本转换编辑,生成用于显示水印的html5 text元素。
14、可选地,设置所述html5 text元素的配置参数,将所述html5 text元素叠加显示于所述ofd文档页面,从而形成文字水印,包括:
15、根据水印视觉需求参数,同步设置所述html5 text元素的配置参数;其中,所述所述水印视觉需求参数包括水印文字内容字体尺寸、字体颜色、字体透明度、字体旋转角度、水印间距;所述配置参数包括所述html5 text元素的文字内容、字体样式、透明度、旋转角度和排列方式;
16、在所述ofd文档页面标定文字水印形成位置坐标,根据所述位置坐标,将所述html5 text元素对齐所述ofd文档页面内相应网格线,以此叠加显示于所述ofd文档页面,从而形成文字水印。
17、可选地,根据水印变更请求,确定水印变更目标内容;根据所述水印变更目标内容,修改所述html5 text元素属性,从而改变文字水印,包括:
18、从水印变更请求解析提取文字水印的水印视觉需求参数变更目标值;根据所述水印视觉需求参数变更目标值,确定水印变更目标内容;其中,所述水印变更目标内容包括需要变更的水印配置参数类别及其变更目标值;
19、根据所述水印变更目标内容,生成新元素属性值以此覆盖所述html5 text元素的原有属性值,从而改变文字水印。
20、作为本发明的一个方面,本发明实施例还提供ofd文档文字水印方法动态设置系统,包括:
21、文档加载与解析模块,用于在浏览器环境加载ofd文档,并从所述ofd文档解析提取文档页面结构信息;
22、页面元素生成模块,用于根据所述文档页面结构信息,生成html页面元素集合;
23、text元素构建模块,用于根据所述ofd文档的文档对象模型和所述html页面元素集合,构建用于显示水印的html5 text元素;
24、配置参数设置模块,用于设置所述html5 text元素的配置参数;
25、水印显示模块,用于将所述html5 text元素叠加显示于所述ofd文档页面,从而形成文字水印;
26、水印改变模块,用于根据水印变更请求,确定水印变更目标内容;根据所述水印变更目标内容,修改所述html5 text元素属性,从而改变文字水印。
27、可选地,所述文档加载与解析模块用于在浏览器环境加载ofd文档,并从所述ofd文档解析提取文档页面结构信息,包括:
28、获取浏览器环境当前加载任务执行进程,根据所述加载任务执行进程,确定所述浏览器环境的加载任务变更时机;根据所述加载任务变更时机,将ofd文档转换成加载任务后添加至加载任务队列;
29、对所述ofd文档进行页面结构识别,得到页面结构元素映射信息;其中,所述页面结构元素映射信息包括所述ofd文档中每个页面包含所有结构元素种类及其所在位置的映射关系;
30、所述页面元素生成模块用于根据所述文档页面结构信息,生成html页面元素集合,包括:
31、构建所述ofd文档的文档对象模型,根据所述页面结构元素映射信息,在所述文档对象模型生成html页面元素集合;其中,所述html页面元素集合包括所述ofd文档下属每个结构元素对应在html页面场景转换后的元素集合。
32、可选地,所述text元素构建模块用于根据所述ofd文档的文档对象模型和所述html页面元素集合,构建用于显示水印的html5 text元素,包括:
33、从所述ofd文档的文档对象模型提取所述html页面元素集合,对所述html页面元素集合进行元素种类区分,得到若干html页面元素子集合;其中,每个html页面元素子集合下属所有html页面元素具有相同的元素种类属性;
34、根据每个html页面元素子集合对应元素种类属性,对每个html页面元素子集合下属所有html页面元素进行文本转换编辑,生成用于显示水印的html5 text元素。
35、可选地,所述配置参数设置模块用于设置所述html5 text元素的配置参数,包括:
36、根据水印视觉需求参数,同步设置所述html5 text元素的配置参数;其中,所述所述水印视觉需求参数包括水印文字内容字体尺寸、字体颜色、字体透明度、字体旋转角度、水印间距;所述配置参数包括所述html5 text元素的文字内容、字体样式、透明度、旋转角度和排列方式;
37、所述水印显示模块用于将所述html5 text元素叠加显示于所述ofd文档页面,从而形成文字水印,包括:
38、在所述ofd文档页面标定文字水印形成位置坐标,根据所述位置坐标,将所述html5 text元素对齐所述ofd文档页面内相应网格线,以此叠加显示于所述ofd文档页面,从而形成文字水印。
39、可选地,所述水印改变模块用于根据水印变更请求,确定水印变更目标内容;根据所述水印变更目标内容,修改所述html5 text元素属性,从而改变文字水印,包括:
40、从水印变更请求解析提取文字水印的水印视觉需求参数变更目标值;根据所述水印视觉需求参数变更目标值,确定水印变更目标内容;其中,所述水印变更目标内容包括需要变更的水印配置参数类别及其变更目标值;
41、根据所述水印变更目标内容,生成新元素属性值以此覆盖所述html5 text元素的原有属性值,从而改变文字水印。
42、本发明实施例中提供的上述技术方案的有益效果至少包括:
43、本发明实施例中提供了ofd文档文字水印方法动态设置方法与系统在浏览器环境加载ofd文档,并从ofd文档解析提取文档页面结构信息;根据文档页面结构信息,生成html页面元素集合;根据ofd文档的文档对象模型和html页面元素集合,构建用于显示水印的html5 text元素;设置html5 text元素的配置参数,将html5 text元素叠加显示于ofd文档页面,从而形成文字水印;根据水印变更请求,确定水印变更目标内容;根据水印变更目标内容,修改html5 text元素属性,从而改变文字水印。通过动态生成html5 text元素作为动态更新文字水印依据,实现在浏览器环境下的ofd文档动态文字水印变化,提高文字水印更新灵活性和降低浏览器资源消耗。
44、本发明的ofd文档文字水印方法动态设置方法与系统具有如下优点:
45、第一,通过html5的text元素实现水印展示,无需依赖canvas绘制方式,避免重新绘制整个页面内容;
46、第二,通过将水印作为独立的html元素进行管理,能够在不影响ofd文档原有内容的情况下动态更新水印内容;
47、第三,支持在浏览器端直接生成水印效果,无需服务器端参与,从而减少网络数据交互和提高系统响应速度;
48、第四,能够在pc端和移动端的浏览器环境中运行实施,具有良好的跨平台兼容性;
49、第五,通过动态更新text元素属性即可修改水印内容,从而提高水印更新效率并降低浏览器资源消耗。
50、本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书以及附图中所特别指出的结构来实现和获得。
51、下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com