CN100392641C - 一种基于克隆块实现自动排版的方法 - Google Patents

一种基于克隆块实现自动排版的方法 Download PDF

Info

Publication number
CN100392641C
CN100392641C CNB2006101124030A CN200610112403A CN100392641C CN 100392641 C CN100392641 C CN 100392641C CN B2006101124030 A CNB2006101124030 A CN B2006101124030A CN 200610112403 A CN200610112403 A CN 200610112403A CN 100392641 C CN100392641 C CN 100392641C
Authority
CN
China
Prior art keywords
object piece
block
data
automatic typesetting
page
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB2006101124030A
Other languages
English (en)
Other versions
CN1908930A (zh
Inventor
闫国龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Peking University
Beijing Founder Electronics Co Ltd
Original Assignee
Peking University
Beijing Founder Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Peking University, Beijing Founder Electronics Co Ltd filed Critical Peking University
Priority to CNB2006101124030A priority Critical patent/CN100392641C/zh
Publication of CN1908930A publication Critical patent/CN1908930A/zh
Application granted granted Critical
Publication of CN100392641C publication Critical patent/CN100392641C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Document Processing Apparatus (AREA)

Abstract

本发明涉及一种基于克隆块实现自动排版的方法,属于印刷前计算机排版领域。现有技术中,自动排版是根据设定的排版对象块的具体类型、位置、大小、数据内容等参数,创建出对应的排版对象块,在版心内依据对象块的大小进行排版,需要设置的版面对象的属性多而复杂,灵活性和一致性差,对排版核心的依赖程度高。本发明所述的方法采用基于XML结构的模板将版面上已存在的块与需要排版的数据进行关联,通过复制对象块的方式得到与所有数据记录相对应的对象块,在指定的排版区域里实现自动排版。采用本发明所述的方法,只需要得到版面对象的唯一标识Id、起始点、宽、高组成的抽象逻辑块,即可进行自动排版,降低了对排版核心的依赖程度,提高了可重复性。

Description

一种基于克隆块实现自动排版的方法
技术领域
本发明属于印刷前计算机排版领域,具体涉及一种基于克隆块实现自动排版的方法。
背景技术
目前,在排版工作中,经常会遇到需要把大量数据排入到版面的相应内容中,这些数据的样式相同,只是内容不同。例如,移动公司所有用户的电话账单,煤气公司所有用户的缴费单,银行所有用户的对账单等等。如果采用人工排版的方法,不仅工作量大,而且容易出错。
本发明所述的自动排版是指把结构相同的批量数据按照预先设计的模板样式和规则自动生成排版结果的计算机排版技术。现有的自动排版技术是根据设定的排版对象块的具体类型、位置、大小、数据内容、样式等参数,创建出对应的排版对象块;进而在版心内依据对象块的大小进行流式横向或者纵向排版。
目前方法存在的主要缺陷是必须充分了解需要自动排版的各种版面对象块的各种属性,需要设置的版面对象的属性繁多而复杂,导致灵活性和一致性差,对排版核心的依赖程度高。而申请人于2002年12月30日提交的“一种自动排版方法”专利申请(申请号02159177.6,公开日2003年6月18日)所公开的一种排版的方法,是将排版系统分为客户端和服务器端并加装模板库,客户端用户输入文稿标题、正文、图片及版面制作模板信息,以及拼版时需要的小版面和拼板模板信息,服务器端用于把客户端输入的制作信息自动加工成客户指定的内容,包括自动制作生成版面和版面拼版两项内容,服务器端自动将加工好的版面和版面拼版反馈给客户端,客户端可以反复修改直到符合要求为止。但是该方法所要解决问题是把多个人的排版结果自动合成一个大版的问题,却不能解决如何把大批量的数据自动排到版面上。
发明内容
针对现有技术中存在的缺陷,本发明的目的是提供一种基于克隆块实现自动排版的方去,该方法能够在利用计算机进行自动排版时不必了解各种版面对象的各种具体的属性,只需要得到版面对象的唯一标识Id、起始点、宽、高,就能由此组成一个抽象的逻辑块,对这些逻辑块进行排版,最后通过块的偏移最终完成自动排版,从而具有很好的灵活性和一致性,最终大大提高自动排版的效率。
为达到以上目的,本发明采用的技术方案是:一种基于克隆块实现自动排版的方法,包括以下步骤:
(1)将需要进行自动排版的数据采用XML语言进行描述;
(2)使用排版引擎设计模板版面,每个模板版面的对象块具有唯一的标识Id,然后采用XML语言描述模板版面,即用逻辑块来描述模板版面的对象块,所述的逻辑块即对象块的逻辑结构;
(3)通过采用XPath技术实现对自动排版数据在模板中的展开,即模版中的每个逻辑块会被展开成与其对应的排版数据的数量相同的多个逻辑块,克隆展开后的各个逻辑块所对应的版面对象块;
(4)通过设置数据内容的接口完成对克隆后的各自动排版版面对象的数据设置;
(5)在指定的自动排版区域里面,排版模板里面记录的逻辑块,此时是针对一系列方块来完成横向或者纵向的排列,并将排版后各对象块的位置即相对于版心的横坐标和纵坐标写入对应的逻辑块参数;
(6)通过模板所记录的对象块的唯一标识Id,将版面上对应的对象块根据逻辑块中的位置参数进行偏移,从而最后完成自动排版。
进一步来说,步骤(1)中,如果自动排版的数据不是XML格式的数据,则先将其转换为XML格式的数据。
进一步,步骤(2)中所述的逻辑块为文字块、图像块和图形块三种。
更进一步,在步骤(2)中所述的逻辑块中记录版面对象块的唯一标识Id、对象块的位置即相对于版心的横坐标和纵坐标、以及对象块的宽度和高度。
再进一步,步骤(2)中记录版面对象块的唯一标识Id时,通过XML的节点属性来实现对象块与XML数据文件中的数据记录结构的对应节点的关联。
本发明的效果在于:采用本发明所述的方法,可以在利用计算机进行自动排版时不必了解各种版面对象的各种具体的属性,只需要得到版面对象的唯一标识Id、起始点、宽、和高等参数组成的抽象的逻辑方块,对这些逻辑方块进行排版,最后通过块的偏移最终完成自动排版,既保证了版面对象属性的可靠性,又大大降低了对排版核心的依赖程度,因而具有很好的灵活性和一致性,大大提高自动排版的效率。
附图说明
图1是本发明所述方法的流程图;
图2是模板版面的逻辑结构示意图;
图3是自动排版数据在模板中的展开示意图;
图4是替换文字块和图像块内容后的效果示意图。
图5是版面对象块偏移后的最终效果示意图。
具体实施方式
下面结合具体实施方式和附图对本发明作进一步的描述:
本实施例以制作工作证为例,如图1所示,一种基于克隆块实现自动排版的方法,具体步骤如下:
(1)使用XML语言描述批量数据。对于原始格式不是XML的数据,需转换为XML格式的数据。
本实施例中采用的数据文件原始格式为:
  姓名   部门   职务   电话   照片
  张三   开发部   工程师   1501   zhangsan.jpg
  李四   市场部   经理   1267   lisi.jpg
  王五   财务部   会计   1359   wangwu.jpg
  周六   行政部   总监   1201   zhouliu.jpg
上述数据用XML语言进行描述后,表现为如下格式的文件:
<人员信息>
  <员工>
     <姓名>张三</姓名>
     <部门>开发部</部门>
     <职务>工程师</职务>
     <电话>1501</电话>
       <照片>zhangsan.jpg</照片>.
   </员工>
   <员工>
       <姓名>李四</姓名>
       <部门>市场部</部门>
       <职务>财务部</职务>
       <电话>1267</电话>
       <照片>zhangsan.jpg</照片>
   </员工>
   <员工>
       <姓名>王五</姓名>
       <部门>财务部</部门>
       <职务>会计</职务>
       <电话>1359</电话>
       <照片>wangwu.jpg</照片>
   </员工>
   <员工>
       <姓名>周六</姓名>
       <部门>行政部</部门>
       <职务>总监</职务>
       <电话>1201</电话>
       <照片>zhouliu.jPg</照片>
   </员工>
</人员信息>
关于XML语言可以参考XML Base W3C Recommendation 27 June2001。
(2)使用排版系统中的排版引擎设计模板版面,如图2所示,包括文字、图像、图形等内容,并且使每个模板版面对象块具有唯一的标识Id;即用逻辑块来描述模板版面的对象块,所述的逻辑块即逻辑结构;
然后采用XML语言描述本步骤中所述的模板版面的对象块的逻辑结构(即逻辑块),抽象的三种逻辑块即文字块、图像块、图形块来描述模板版面的对象块。逻辑块的描述包括:记录版面对象块的唯一标识Id,块的位置即相对于版心的横坐标x-start、纵坐标y-start,块的宽度width,块的高度height;记录版面对象块的唯一标识Id时,通过节点属性databinding来记录模板版面对象块与XML数据文件中的数据记录结构的对应节点的关联,所述的这种对象块与节点的关联是一一对应的;
(3)采用XPath技术,根据逻辑块的节点属性databinding所记录的与数据文件的关联关系实现对自动排版数据在模板中的展开,从而得到最终需要进行自动排版的逻辑块,对于同一数据结构的多条记录展开后模板中会得到多个逻辑块节点,依据数量复制出相应数量的逻辑块,如图3所示,并将对应的逻辑块的参数写入对应的模板节点之中;把每个逻辑块的Id设置为相同的模板版面对象块的Id,同时根据数据文件的记录内容设置每个逻辑块的内容(对于文字块是文字内容;对于图像块是图像文件名;对于图像块则不设置);对于每个逻辑块,在排版引擎根据逻辑块所记录的Id克隆出一个新的版面对象块,克隆有两种方式:一种是通过调用排版引擎提供的克隆块接口函数来实现,另一种方法是调用排版引擎的对选中的块进行拷贝、粘贴命令来实现克隆。新版面对象块与原有的版面对象块的唯一区别是Id不同;
关于XPath语言可以参考XML Path Language(XPath)Version 1.0W3C Recommendation 16 November1999。
(4)通过排版引擎的设置数据内容的接口完成对各自动排版版面对象块的数据设置(对于文字块是替换其文字内容;对于图像块是替换图像内容;对于图形块则不用替换),并将对应的逻辑块的参数写入对应的模板节点之中;
(5)在指定的自动排版区域里面,排版模板里面记录的逻辑块,此时是针对一系列方块来完成横向或者纵向的排列,并将排版后各对象的位置(x-start、y-start)写入对应的逻辑块参数,结果如图4所示;
(6)通过模板所记录的块的唯一标识Id,将版面上对应的对象块根据逻辑块中的位置参数进行偏移,从而最后完成自动排版。最终的结果如图5所示。
采用本发明的方法后,对于新的属性可以不在模板文件中增加描述属性;而现有的实现方法需要在模板文件中增加很多的属性来描述块的属性,例如块的旋转放缩,文字的花边底纹等等。而且,通过以上实施例可以看出,本发明可以在利用计算机进行自动排版时不必了解各种版面对象的各种具体的属性,只需要得到版面对象的唯一标识Id、起始点、宽、和高等参数组成的抽象的逻辑方块,对这些逻辑方块进行排版,最后通过块的偏移最终完成自动排版。
本发明所述的方法并不限于具体实施方式中所述的实施例,本领域技术人员根据本发明的技术方案得出其他的实施方式,同样属于本发明的技术创新范围。

Claims (6)

1.一种基于克隆块实现自动排版的方法,包括以下步骤:
(1)将需要进行自动排版的数据采用XML语言进行描述;
(2)使用排版引擎设计模板版面,每个模板版面的对象块具有唯一的标识Id,然后采用XML语言描述模板版面,即用逻辑块来描述模板版面的对象块,所述的逻辑块即对象块的逻辑结构;
(3)通过采用XPath技术实现对自动排版数据在模板中展开,即模版中的每个逻辑块会被展开成与其对应的排版数据的数量相同的多个逻辑块,克隆展开后的各个逻辑块所对应的版面对象块;
(4)通过设置数据内容的接口完成对克隆后的各自动排版版面对象块的数据设置;
(5)在指定的自动排版区域里面,排版模板里面记录的逻辑块,此时是针对一系列方块来完成横向或者纵向的排列,并将排版后各对象块的位置即相对于版心的横坐标和纵坐标写入对应的逻辑块参数;
(6)通过模板所记录的对象块的唯一标识Id,将版面上对应的对象块根据逻辑块中的位置参数进行偏移,从而最后完成自动排版。
2.如权利要求1所述的一种基于克隆块实现自动排版的方法,其特征是:步骤(1)中,如果自动排版的数据不是XML格式的数据,则先将其转换为XML格式的数据。
3.如权利要求1所述的一种基于克隆块实现自动排版的方法,其特征是:步骤(2)中所述的逻辑块包括文字块、图像块、图形块和表格块。
4.如权利要求1、2或3所述的一种实现基于克隆块的自动排版的方法,其特征是:在步骤(2)中所述的逻辑块中记录版面对象块的唯一标识Id、对象块的位置即相对于版心的横坐标和纵坐标、以及对象块的宽度和高度。
5.如权利要求1、2或3所述的一种实现基于克隆块的自动排版的方法,其特征是:步骤(2)中记录版面对象块的唯一标识Id时,通过XML的节点属性来实现对象块与XML数据文件中的数据记录结构的对应节点的关联。
6.如权利要求4所述的一种实现基于克隆块的自动排版的方法,其特征是:步骤(2)中记录版面对象块的唯一标识Id时,通过XML的节点属性来实现对象块与XML数据文件中的数据记录结构的对应节点的关联。
CNB2006101124030A 2006-08-16 2006-08-16 一种基于克隆块实现自动排版的方法 Expired - Fee Related CN100392641C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2006101124030A CN100392641C (zh) 2006-08-16 2006-08-16 一种基于克隆块实现自动排版的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2006101124030A CN100392641C (zh) 2006-08-16 2006-08-16 一种基于克隆块实现自动排版的方法

Publications (2)

Publication Number Publication Date
CN1908930A CN1908930A (zh) 2007-02-07
CN100392641C true CN100392641C (zh) 2008-06-04

Family

ID=37700041

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006101124030A Expired - Fee Related CN100392641C (zh) 2006-08-16 2006-08-16 一种基于克隆块实现自动排版的方法

Country Status (1)

Country Link
CN (1) CN100392641C (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012122934A1 (zh) * 2011-03-14 2012-09-20 北京小米科技有限责任公司 一种网页重排版的方法

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101295290B (zh) * 2008-06-11 2011-11-09 北大方正集团有限公司 一种多行文字行中排版的方法
CN101989256B (zh) * 2009-07-31 2012-08-01 北京大学 一种文书文件的排版方法及装置
CN102110086B (zh) * 2009-12-28 2012-11-28 北大方正集团有限公司 一种版面对象随版面自动调整的方法及系统
CN101894168B (zh) * 2010-06-30 2013-02-06 优视科技有限公司 移动终端网页页面的排版显示方法及系统
CN106610929A (zh) * 2015-10-26 2017-05-03 北大方正集团有限公司 数字出版的结构化内容文件的排版方法和装置
CN105701073A (zh) * 2015-12-31 2016-06-22 北京中科江南信息技术股份有限公司 版式文件的生成方法及装置
CN110969004B (zh) * 2019-12-16 2023-06-13 方正株式(武汉)科技开发有限公司 图文自动排版方法及系统、服务器及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1421669A (zh) * 2001-11-23 2003-06-04 善腾太阳能源工业股份有限公司 自发诱导对流式热交换器
JP2004199545A (ja) * 2002-12-20 2004-07-15 Sankei Living Simbun Inc 文書作成校閲システム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1421669A (zh) * 2001-11-23 2003-06-04 善腾太阳能源工业股份有限公司 自发诱导对流式热交换器
JP2004199545A (ja) * 2002-12-20 2004-07-15 Sankei Living Simbun Inc 文書作成校閲システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012122934A1 (zh) * 2011-03-14 2012-09-20 北京小米科技有限责任公司 一种网页重排版的方法

Also Published As

Publication number Publication date
CN1908930A (zh) 2007-02-07

Similar Documents

Publication Publication Date Title
CN100392641C (zh) 一种基于克隆块实现自动排版的方法
CN102521225B (zh) 增量数据抽取装置和增量数据抽取方法
CN101430714B (zh) 一种基于样式的内容结构化加工方法及系统
CN107862049B (zh) 一种数据补录方法及装置
JP2011524596A (ja) イヤーブック作成のためのシステムおよび方法
CN101523413A (zh) 根据硬拷贝表单自动生成表单定义
CN109062567A (zh) 基于b/s结构的信息管理系统快速开发平台
BRPI0615679B1 (pt) sincronização em tempo real de dados de xml entre aplicações
CN106021207A (zh) 专利撰写系统及其方法
CN110969004B (zh) 图文自动排版方法及系统、服务器及介质
CN110543303A (zh) 一种可视化业务平台
CN108469953A (zh) 一种页面表单的生成方法、服务器及存储介质
CN105589842A (zh) 数字出版物的排版方法及装置
CN103617496A (zh) 信息化报告的自动生成方法及系统
CN102097015A (zh) 一种作业指导书处理系统及方法
CN100507901C (zh) 一种网络文集制作成书籍的方法
JP2016514393A (ja) 差分符号化のためのシリアライゼーション
JP2000339306A (ja) 文書作成装置
CN103942186A (zh) 一种管理文档的方法及系统
CN101373475B (zh) 一种对可变数据内容再加工的方法及系统
JP4268141B2 (ja) データベース複製プログラムおよびデータベース複製装置
US20100332970A1 (en) System and method for creating an electronic document
CN113050934A (zh) 表单驱动智能开发方法、装置以存储介质
Leone et al. Concept and architecture of an pervasive document editing and managing system
JPH11102362A (ja) コンピュータネットワークを利用した集版システム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080604

Termination date: 20190816

CF01 Termination of patent right due to non-payment of annual fee