一种嵌入式WEB端文档编辑系统及编辑方法技术方案

技术编号:33285670 阅读:27 留言:0更新日期:2022-04-30 23:52
一种嵌入式WEB端文档编辑系统,包括元素层模块、控制层模块、视图层模块、编译层模块和数据层模块,视图层模块用于文档的渲染,所述元素层模块包括控件组件、页面组件和内容组件,控制层模块用于对所述视图层模块中文档的编辑,编译层模块用于生成文档并进行数据传输,数据层模块用于传递所述编译层模块的数据信息。本发明专利技术可嵌入第三方系统,并与第三方系统进行数据互通,且提供内置API以供第三方系统开发定制化的文档业务模块,供文档创作者进行复杂的排版操作,支持复杂的表格矩阵设计,单元格合并功能配合单元格的新增行、新增列,以及行与列的宽高调整功能,可做出任意矩阵的表格,以满足文档创作者对复杂表单的需求。以满足文档创作者对复杂表单的需求。以满足文档创作者对复杂表单的需求。

【技术实现步骤摘要】
一种嵌入式WEB端文档编辑系统及编辑方法


[0001]本专利技术涉及办公算法
,尤其是一种嵌入式WEB端文档编辑系统。

技术介绍

[0002]多数WEB端的文档编辑器分为两类,一类是提供对本段落和图片编辑功能的富文本编辑器,一类是提供文档多人在线协作编辑能力的文档编辑器。
[0003]上述的两种文档编辑器都存在问题,即:
[0004]富文本编辑器专注于单页文档的文本段落的编辑,仅提供图片和简单的表格控件,无法满足复杂的多页文档创作;
[0005]而多人在线协作类的文档编辑器虽然能够进行复杂的多页文档的创作,但存在数据不能与第三方系统打通、缺失报表类文档编辑所需的控件及拖拽排版的功能等问题,如编辑器不能集成在第三方系统中,导致不能直接在第三方系统内进行文档创作,且第三方系统的业务数据无法运用到文档的编辑中,编辑器不提供文档内容解析为通用的JSON数据的能力,第三方系统无法充分利用自己创作的文档,且文档不支持用户自定义拖拽排版,表单控件缺失,所以,多人在线协作类的文档编辑器将用户创作的数据锁定在其自己的生态圈内,文档内容仅能以附件形式存储在第三方系统的服务器上,使得第三方系统的业务数据无法渗透到创作的文档中,难以胜任报表形式的文档创作。

技术实现思路

[0006]本专利技术的目的在于克服现有技术的不足,提供一种可嵌入第三方系统并与其数据共享的WEB端文档编辑系统。
[0007]本专利技术解决其技术问题是采取以下技术方案实现的:
[0008]一种嵌入式WEB端文档编辑系统,包括元素层模块、控制层模块、视图层模块、编译层模块和数据层模块,所述视图层模块用于文档的渲染,所述元素层模块包括控件组件、页面组件和内容组件,用于填充所述视图层模块中的文档,所述控制层模块包括面板组件、工具组件、菜单组件,用于对所述视图层模块中文档的编辑,所述编译层模块包括数据处理组件和文件生成组件,所述编译层模块用于生成文档并进行数据传输,所述数据层模块用于传递所述编译层模块的数据信息,所述数据层模块连接有第三方系统的文档业务模块;
[0009]所述视图层模块中有文档模板,所述元素层模块对文档模板进行元素填充,所述控制层模块对文档模板进行特征编辑,所述视图层模块将完成的文档数据传输至所述编译层模块中,进行数据解析并生成文档,文档通过所述数据层模块传输至第三方系统的文档业务模块中,完成文档编辑。
[0010]优选的,所述元素层模块的控件组件包括标题控件、文本框控件、线段控件、选框控件、图片控件以及表格控件中的一种或多种的结合。
[0011]优选的,所述元素层模块的页面组件包括页眉元素、页脚元素、页码元素和水印元素中的一种或多种的结合。
[0012]优选的,所述控制层模块的面板组件包括坐标及尺寸属性、字体属性、模型及布局属性、主题设置属性、图片库和填充属性中的一种或多种的结合。
[0013]优选的,所述编译层模块的数据处理组件包括数据模型、解析机构和编译机构,所述编译机构用于对原始数据进行编译,所述解析机构用于将编译的数据进行解析。
[0014]优选的,所述数据层模块包括JSON数据处理模块、图片数据处理模块和PDF数据处理模块,所述编译机构将编译的数据信息传输至所述JSON数据处理模块中,所述JSON数据处理模块将JSON数据传输至所述解析机构中,所述文件生成组件将文档导出至所述PDF数据处理模块中。
[0015]优选的,所述第三方系统的文档业务模块将生成的文档信息传输至服务器中,所述服务器中存储有文档、文档模板、文档草稿。
[0016]优选的,所述数据层模块和第三方系统的文档业务模块中的数据互通共享。
[0017]一种嵌入式WEB端文档编辑系统的编辑方法,包括以下步骤:
[0018]S1、将文档编辑系统嵌入第三方系统中,文档编辑系统的源代码全部集合在一个项目文件夹中,可以直接嵌入到第三方系统中;
[0019]S2、利用文档编辑系统提供的应用接口对第三方系统进行二次开发,自研第三方系统的文档业务模块,文档编辑系统采用面向对象的编程思想进行研发,外暴露一个名为Report的构造函数,该构造函数上定义了如下三类静态方法或静态属性:
[0020]1)控制文档基本属性的静态属性
[0021]如fileName(文档名称)、width(文档宽度)、direction(文档方向)等;
[0022]2)对文档进行全局操作的静态方法
[0023]如deletePaper(删除文档某页及该页上所有的控件)、titleList(获取文档中所有的标题控件生成文档目录)、addPaper(往文档中插入空白页)等;
[0024]3)为第三方系统提供业务支持的静态方法(API)
[0025]如init(初始化文档)、exportReport(导出PDF文档)、saveReport(获取文档JSON数据)、createThumbnail(生成缩略图)、reverseReport(使用JSON数据渲染文档)等;
[0026]S3、使用文档编辑系统中的元素层模块和控制层模块进行文档的编辑填充,文档编辑系统提供多种类型控件,每一种控件通过数据模型继承了通用的数据字段,不同的控件也通过数据模型设置了私有的数据字段,控件类型如下:
[0027]标题控件:为文档添加权重为标题的文本内容,标题共分为四种权重,权重越高标题默认字号越大;
[0028]文本框控件:为文档添加文本段落,支持水平和垂直方向上的多种文字对齐方式及富文本样式;
[0029]线段控件:为文档添加分割线,有四种类型和两种方向,支持切换类型和方向;
[0030]选框控件:为文档插入单选框和复选框控件,支持文本输入和选中操作;
[0031]图像控件:为文档插入图片,提供四种标准的图片填充方式;
[0032]水印控件:为文档插入图片水印,支持水印平铺、旋转、透明度、尺寸等操作;
[0033]表格控件:为文档插入复杂的、可配置性高的表格控件,提供复杂的单元格合并及行列操作等功能;
[0034]S4、通过编译层模块的编译机构编译JSON数据,并传输至数据层模块,当文档创作
完毕调用Report的静态方法saveReport可以获取该文档的JSON数据,该方法的具体实现步骤如下:
[0035]1)从Report构造函数上获取关于文档的基础数据如文档名称、文档宽高、文档页边距等;
[0036]2)从Report.reportData上获取文档每一页的数据,包括每一页上挂载的所有控件的数据;
[0037]3)对上述获取的数据进行过滤,滤去与渲染无关的字段,与文档基础数据进行组装并序列化,return这个JSON数据;
[0038]S5、数据层模块将文档数据传输至第三方系统的文档业务模块中,文档业务模块对文档数据进行组装,并使用预设的文档类型,当第三方业务系统的文档业务模块拿到文档的核心本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种嵌入式WEB端文档编辑系统,其特征在于:包括元素层模块、控制层模块、视图层模块、编译层模块和数据层模块,所述视图层模块用于文档的渲染,所述元素层模块包括控件组件、页面组件和内容组件,用于填充所述视图层模块中的文档,所述控制层模块包括面板组件、工具组件、菜单组件,用于对所述视图层模块中文档的编辑,所述编译层模块包括数据处理组件和文件生成组件,所述编译层模块用于生成文档并进行数据传输,所述数据层模块用于传递所述编译层模块的数据信息,所述数据层模块连接有第三方系统的文档业务模块;所述视图层模块中有文档模板,所述元素层模块对文档模板进行元素填充,所述控制层模块对文档模板进行特征编辑,所述视图层模块将完成的文档数据传输至所述编译层模块中,进行数据解析并生成文档,文档通过所述数据层模块传输至第三方系统的文档业务模块中,完成文档编辑。2.根据权利要求1所述的一种嵌入式WEB端文档编辑系统,其特征在于:所述元素层模块的控件组件包括标题控件、文本框控件、线段控件、选框控件、图片控件以及表格控件中的一种或多种的结合。3.根据权利要求1所述的一种嵌入式WEB端文档编辑系统,其特征在于:所述元素层模块的页面组件包括页眉元素、页脚元素、页码元素和水印元素中的一种或多种的结合。4.根据权利要求1所述的一种嵌入式WEB端文档编辑系统,其特征在于:所述控制层模块的面板组件包括坐标及尺寸属性、字体属性、模型及布局属性、主题设置属性、图片库和填充属性中的一种或多种的结合。5.根据权利要求1所述的一种嵌入式WEB端文档编辑系统,其特征在于:所述编译层模块的数据处理组件包括数据模型、解析机构和编译机构...

【专利技术属性】
技术研发人员:范绍东刘洋马长春王贲
申请(专利权)人:杭州永谐科技有限公司成都分公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1