作为开源协同办公项目,提供了符合国家党政机关公文格式标准(GB/T 9704—2012)的公文编辑组件,可以让用户在不需要付出额外成本,就可以实现标准化公文格式的编辑。
公文编辑器不同于我们其他的在线文档编辑器,它基本上只限于公文系统中对红头文件的编辑和查看,规定了标准的格式、字体、行距、字据等,编辑自由度是比较低的。O2OA的公文编辑器适用于红头文件的处理,或是对格式要求非常严格的文书编辑。其他情况下的在线文档编辑功能,我们可以选择OnlyOffice、WPS等其他产品,您可以在我们的文档库中找到相关的内容。
O2OA公文编辑器中的格式规范,是参照《党政机关公文格式》国家标准(GB/T9704—2012)来设定的,下面简略说明一下红头文件的组成和相关格式规范。
一个标准的红头文件,基本上是下面的样式:
当然不同的文种的格式会略有不同,但主要元素基本一致。下面我们对规范上要求的各个标准做一个简要的说明。
公文用纸采用A4型纸,幅面尺寸为:210mm x 297mm。
我们还是通过表格来说明每个字段的含义。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
出席标题(会议纪要类的模板中)
|
请假标题(会议纪要类的模板中)
|
列席标题(会议纪要类的模板中)
|
出席人(会议纪要类的模板中)
|
请假人(会议纪要类的模板中)
|
列席人(会议纪要类的模板中)
|
记录人(党委会议纪要类的模板中)
|
|
再往下是CSS属性,我们可以给版式正文定义额外的样式。接着是校验,这两部分我们将在后续的章节说明。
公文编辑组件属性的“配置”部分,主要是控制公文中各个内容项的显示和值的绑定。
先看每个内容元素的通用配置:
|
显示,隐藏,自动,根据脚本
|
此属性配置本内容元素的显示状态。
显示:无论有没有值,都显示(占位)
隐藏:不显示此内容元素,也不占位
自动:根据此元素的值来确定,空则隐藏,有值则显示
根据脚本:在下方脚本编辑器中输入脚本,运行返回true则显示,否则隐藏。
|
设置此元素要显示什么内容。
表单数据:将此元素的值与表单中的字段绑定,(在下方的表单数据属性中输入表单字段标识),当表单中的字段发生变化时,此元素的值也立即变化。
脚本:通过脚本计算此元素的值(在下方的脚本编辑器中输入脚本),当文档保存后,或者公文编辑器执行resetData方法后更新元素值。
|
编辑文件标题和发文单位
文件标题元素一般会绑定到文档subject字段,此字段一般是Textfield类型的字段。文件标题过长时,会自动换行,规范要求标题换行要词义完整、长短适宜,这就需要用户手工进行换行,在这种情况下,我们就需要设置文件标题元素为可编辑。
文件标题配置有“允许编辑”属性,三个选项为:“允许”、“不允许”和“根据脚本”,默认值为“不允许”。
允许:可以让用户在公文编辑器中直接编辑标题,一般都是进行换行分隔操作。
不允许:不可在公文编辑器中直接编辑标题。
根据脚本:通过脚本运行返回true表示“允许”,否则“不允许”。
注意:当标题可编辑时,不要绑定表单数据(保持绑定值选“表单数据”;表单数据为空)。因为如果绑定了数据,用户的修改会被表单上的值重新覆盖。
我们还可以配置“同步数据路径”,将编辑的内容同步回表单字段,在此处输入表单上的字段标识即可。
发文单位和标题一样,由于一些格式要求,可设置允许编辑,但没有同步回表单数据的功能。
一般情况下,公文元素内容绑定的值都是字符串,但有以下一些内容,可绑定特殊的值:
附件:表单数据可以绑定一个附件组件,会计算此附件组件中上传的所有附件,作为公文附件展示在公文内容中。
签发人:可绑定组织类型的表单字段。选择类型为“身份”。
主送单位和抄送单位:可绑定组织类型的表单字段。选择类型为“组织”。
在公文编辑器属性的“配置”页面中,有一个“自定义元素配置”,这是用在系统默认元素不够用的情况下,可以在模板中增加自定义元素,并将其要显示的内容,与业务数据绑定。
假设需要在版记之前加上一个“其他说明”,如下图:
可以按以下步骤来实现:
其中P元素的class设置了“doc_layout”代表这是公文编辑器中的一个有效元素,“data-doc-layout”属性定义了此元素的自定义名称。
编辑完成后,保存文件,并上传到服务器。本例中,上传到了webserver的filetemplate目录中。
在表单编辑中,设置公文编辑器属性中的文件模板为“自定义模板”,模板路径输入上传的模板文件路径。在本例中就是“../filetemplate/standard.html”。(关于自定义模板的制作,我们将在第三章中详细描述)
在公文编辑器属性的“配置”页中,配置自定义元素如下:
explain为表单中的任意文本类字段的标识。
保存表单后,只要explain字段值改变,并触发“change”事件,公文编辑器中的对应元素的显示内容就会发生改变。
配置完以上内容后,我们就可以使用公文编辑组件了。