一种表格的可变数据排版的方法技术

技术编号:2843781 阅读:273 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种表格的可变数据排版的方法,属于印前计算机排版领域。现有技术中,表格的可变数据排版的方法是创建指定样式的表格,利用排版数据直接替换单元格的可变内容项,表格的行数和列数在排版中不发生改变,此方法只适于单层结构的可变数据排版,不能实现多层嵌套结构的排版数据的排版。本发明专利技术所述的方法将表格模版从表格块、行、单元格、可变内容项四个层次构建表格模版节点树,然后将连续的行节点构建成为组,将节点树的节点与表格中的排版数据关联,然后进行排版数据的展开,得到表格的多层嵌套结构的排版效果。采用本发明专利技术所述的方法,可以实现表格对多层嵌套结构的排版数据的可变数据排版的支持,扩展了可变数据排版的应用范围。

【技术实现步骤摘要】

本专利技术属于印前计算机排版
,具体涉及。
技术介绍
随着数码印刷技术的发展,直复营销业务日益增长,各种个性化账单(如银行账单、保险单等等)的制作、印刷业务越来越多。彩色技术和数据挖掘技术的不断进步,使得个性化账单的制作更加精美细致,展现形式也更加丰富,如常见的银行卡用户的消费记录,其通常表现为在同一个表格账单里面显示在不同的地域刷卡消费的明细记录等内容,而这些表格账单中的明细记录属于可变数据,即这些数据内容可因不同的持卡用户因信息的不同而发生变化,由此对可变数据的内容制作,尤其是对于作为账单这种主要表现形式的表格的制作提出了更高的要求。现有技术中,表格的可变数据排版的方法是创建指定样式的表格,然后利用排版数据直接替换表格中各个单元格里面的可变内容项,表格的行数和列数在排版过程中并不发生改变,显然,这种方法适合单层结构的排版数据的可变数据排版,但是,对于多层嵌套结构的排版数据而言,排版时表格的列数一般是确定的,但表格的行数往往是不确定的,显然,采用现有的方法无法实现这种多层嵌套结构的排版数据的排版要求。
技术实现思路
针对现有技术中的缺陷,本专利技术的目的是提供,该方法通过将表格模版从表格块、行、单元格、可变内容项四个层次构建表格模版节点树,然后将连续的多个行节点构建成为组,同时支持对组的嵌套构建,将节点树的各节点分别与表格中的排版数据进行关联,然后进行排版数据的展开,能够实现表格的多层嵌套结构的排版数据的可变数据排版,能够丰富表格的排版效果,并能够扩展可变数据排版的应用范围。为达到以上目的,本专利技术采用的技术方案是,包括以下步骤(1)将需要进行排版的表格数据内容转换为基于树形结构的数据,同时得到排版内容的树形结构; (2)在排版系统中设计表格模版,解析表格模版,按照表格块、行、单元格、可变内容项四个层级构建和初始化表格模版节点树,相应地得到表格模版节点树的四个层级的节点,即表格块节点、行节点、单元格节点和可变内容项节点,其中表格块节点、行节点、单元格节点三种节点为枝干结点,可变内容项节点为叶子结点;表格模版节点树的行节点、单元格节点和可变内容项节点与表格模版的行、单元格和可变内容项一一对应,即表格模版节点树的行节点与表格模版的表格行一一对应,表格模版节点树中行节点下的单元格节点与表格模版对应的行下的单元格一一对应,表格模版节点树的可变内容项节点与表格模版的可变内容项一一对应;表格模版节点树的各节点即表格块节点、行节点、单元格节点和可变内容项节点均具有数据绑定属性(英文名称为databinding),该数据绑定属性用于记录与之相关联的排版内容在排版内容形成的树形结构上的位置;(3)在表格模版节点树中构建组节点,其中构建第一个组节点时,由表格模版节点树的任意连续的行节点组成,然后将该第一个组节点插入到表格模版节点树中构成该组节点的第一个行节点的位置处;构建其它组节点时,该组节点由连续的行节点组成,或者由连续的组节点组成,或者由连续的行节点与组节点组成,组节点的位置在组成该组节点的第一个节点位置处;所述的组节点是构建在表格模版节点树上的逻辑节点,不与版面上的任何实际排版内容相关联,是枝干节点;所述的组节点具有数据绑定属性;(4)依次设置表格模版节点树的各节点即表格块节点、组节点、行节点、单元格节点、可变内容项节点与步骤(1)中得到的排版内容的树形结构之间的关联;所述的关联通过表格模板节点树中各节点的数据绑定属性实现;(5)依照步骤(4)中建立的关联,将排版的数据内容进行逐级展开,逐级递归地得到表格模板节点树的各个节点所对应的排版内容,根据一对多原则,在表格模板节点树中构建相对应的节点对象,将排版内容依次记录到对应的节点对象中,得到展开后的表格模版节点树;(6)创建新的表格,根据步骤(5)中展开的表格模版节点树的各个行节点记录的内容,依次创建与表格模版中的对应行相同的新的表格行,并插入到新创建的表格中,从而实现表格结构的创建;(7)依次取得表格模版节点树的各个叶子节点,利用叶子节点所记录的排版数据内容置换新创建的表格中各个单元格中对应的可变内容项,从而实现对排版内容的设置,处理结束。进一步,为使本专利技术获得更好的专利技术效果,步骤(1)中将需要进行排版的表格数据内容转换为基于XML格式的树形结构数据,同时得到基于XML格式的排版内容的树形结构;进一步,为使本专利技术获得更好的专利技术效果,步骤(2)中所述的表格模版节点树基于XML格式进行构建;进一步,为使本专利技术获得更好的专利技术效果,步骤(4)中设置表格模版节点树的各节点与步骤(1)中得到的排版内容的树形结构之间的关联时,表格模版节点树基于XML构建,排版内容的树形结构也基于XML构建,然后表格块节点、组节点、行节点、单元格节点、可变内容项节点五类节点均通过XML节点的数据绑定属性记录与排版内容的树形结构之间的关联;进一步,为使本专利技术获得更好的专利技术效果,步骤(5)中将排版的数据内容进行逐级展开,得到展开后的表格模版节点树时,采用的方法是表格模版节点树基于XML进行构建,排版内容的树形结构也基于XML构建,表格模版节点树的每个节点都记录了XML节点的数据绑定属性,根据数据绑定属性,逐级递归地得到表格模版节点树的每个节点所对应的排版内容的XML节点,采用XPath技术即能实现对排版内容的XML节点的访问,并构建出对应的表格模版节点树的节点对象,同时将排版内容的XML节点记录的数据内容赋值到创建的节点对象之中,从而实现表格模版节点树的展开。本专利技术的效果在于采用本专利技术所述的方法,可以实现表格对多层嵌套结构的排版数据的可变数据的排版,丰富了表格的排版效果,扩展了可变数据排版的应用范围。附图说明图1是本专利技术所述方法的流程图;图2是基于XML的待排版内容的树形结构示意图;图3是在排版系统中设计的表格模版的示意图;图4是在解析表格模版后生成的基于XML的表格模版节点树的示意图;图5是添加了组节点后的表格模版节点树的示意图;图6是基于XML的表格模版节点树与基于XML的排版内容的树形结构之间的关联示意图;图7、图8、图9是依据展开后的表格模版节点树而创建出来的表格结构的示意图; 图10、图11、图12是最终的表格排版效果示意图。具体实施例方式下面结合具体实施例和附图,对本专利技术作进一步的阐述如图1所示,,包括以下步骤(1)将需要进行排版的表格数据内容转换为基于树形结构的数据,同时得到排版内容的树形结构;本实施例中,将需要进行排版的表格数据内容转换为基于XML格式的树形结构数据,同时取得基于XML格式的排版内容的树形结构;本实例中,需要进行排版的数据为个人信用卡消费信息,数据文件的原始格式如表1、表2所示,期望达到的排版效果是每个人的信用卡消费信息都能够单独排版成一个独立的表格,表格里面的刷卡记录是依据刷卡地点进行分组排版的;表1个人基本信息 表2需要排版的个人信用卡消费信息 将表1、表2所示的排版内容转换为XML格式的数据,得到基于XML的排版内容的树形结构如图2所示,具体表现为如下形式<信用卡消费汇总> <个人消费汇总> <个人基本信息> <本文档来自技高网...

【技术保护点】
一种表格的可变数据排版的方法,包括以下步骤:(1)将需要进行排版的表格数据内容转换为基于树形结构的数据,同时得到排版内容的树形结构;(2)在排版系统中设计表格模版,解析表格模版,按照表格块、行、单元格、可变内容项四个层级构建 和初始化表格模版节点树,相应地得到表格模版节点树的四个层级的节点,即表格块节点、行节点、单元格节点和可变内容项节点,其中表格块节点、行节点、单元格节点三种节点为枝干结点,可变内容项节点为叶子结点;表格模版节点树的行节点、单元格节点和可变内容项节点与表格模版的行、单元格和可变内容项一一对应;表格模版节点树的各节点即表格块节点、行节点、单元格节点和可变内容项节点均具有数据绑定属性,该数据绑定属性用于记录与之相关联的排版内容在排版内容形成的树形结构上的位置;(3)在表格模版 节点树中构建组节点,其中构建第一个组节点时,由表格模版节点树的任意连续的行节点组成,然后将该第一个组节点插入到表格模版节点树中构成该组节点的第一个行节点的位置处;构建其它组节点时,该组节点由连续的行节点组成,或者由连续的组节点组成,或者由连续的行节点与组节点组成,组节点的位置在组成该组节点的第一个节点位置处;所述的组节点是构建在表格模版节点树上的逻辑节点,不与版面上的任何实际排版内容相关联,是枝干节点;所述的组节点具有数据绑定属性;(4)依次设置表格模版节点树的各节点 即表格块节点、组节点、行节点、单元格节点、可变内容项节点与步骤(1)中得到的排版内容的树形结构之间的关联,所述的关联通过表格模板节点树中各节点的数据绑定属性实现;(5)依照步骤(4)中建立的关联,将排版的数据内容进行逐级展开,逐级递 归地得到表格模板节点树的各个节点所对应的排版内容,根据一对多原则,在表格模板节点树中构建相对应的节点对象,将排版内容依次记录到对应的节点对象中,得到展开后的表格模版节点树;(6)创建新的表格,根据步骤(5)中展开的表格模版节点树的各 个行节点记录的内容,依次创建与表格模版中的对应行相同的新的表格行,从而实现表格结构的创建;(7)依次取得表格模版节点树的各个叶子节点,利用叶子节点所记录的排版数据内容置换新创建的表格中各个单元格中对应的可变内容项,从而实现对排版内容 的设置,处理结束。...

【技术特征摘要】
1.一种表格的可变数据排版的方法,包括以下步骤(1)将需要进行排版的表格数据内容转换为基于树形结构的数据,同时得到排版内容的树形结构;(2)在排版系统中设计表格模版,解析表格模版,按照表格块、行、单元格、可变内容项四个层级构建和初始化表格模版节点树,相应地得到表格模版节点树的四个层级的节点,即表格块节点、行节点、单元格节点和可变内容项节点,其中表格块节点、行节点、单元格节点三种节点为枝干结点,可变内容项节点为叶子结点;表格模版节点树的行节点、单元格节点和可变内容项节点与表格模版的行、单元格和可变内容项一一对应;表格模版节点树的各节点即表格块节点、行节点、单元格节点和可变内容项节点均具有数据绑定属性,该数据绑定属性用于记录与之相关联的排版内容在排版内容形成的树形结构上的位置;(3)在表格模版节点树中构建组节点,其中构建第一个组节点时,由表格模版节点树的任意连续的行节点组成,然后将该第一个组节点插入到表格模版节点树中构成该组节点的第一个行节点的位置处;构建其它组节点时,该组节点由连续的行节点组成,或者由连续的组节点组成,或者由连续的行节点与组节点组成,组节点的位置在组成该组节点的第一个节点位置处;所述的组节点是构建在表格模版节点树上的逻辑节点,不与版面上的任何实际排版内容相关联,是枝干节点;所述的组节点具有数据绑定属性;(4)依次设置表格模版节点树的各节点即表格块节点、组节点、行节点、单元格节点、可变内容项节点与步骤(1)中得到的排版内容的树形结构之间的关联,所述的关联通过表格模板节点树中各节点的数据绑定属性实现;(5)依照步骤(4)中建立的关联,将排版的数据内容进行逐级展开,逐级递归地得到表格模板节点树的各个节点所对应的排版内容,根据一对多原则,在表格模板节点树中构建相对应的节点对象,将排版内容依次记录到对应的节点对象中,得到...

【专利技术属性】
技术研发人员:闫国龙
申请(专利权)人:北京北大方正电子有限公司北京大学
类型:发明
国别省市:11[中国|北京]

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

1
相关领域技术
  • 暂无相关专利