一种模板独立的排版系统及方法_2

文档序号:8380924阅读:来源:国知局
处理结果见图11,抽取过程遵循数据库中预处理参数的内容进行加工处理,数据库预处理参数内容如图9所示。
[0020]3)使用本发明排版系统,导入“文本模板.doc”。排版系统对标识有“<%s%”开始的段落进行格式读取,并将结果存于排版系统的变量中,对含有标识的段落格式进行编号,格式编号结果见图12。
[0021]4)本发明排版系统内置识别命令构建编号,见图13,使用本排版系统编写的“识别命令.txt” (ANSI格式),内容见图14,以下举例解释其含义。
[0022]1_1(毕业设计(论文)I) 前的“I”代表图12中的格式编号;后的I代表图13中的识别命令构建编号,即“与自定义字符完全相同(结论)”;“()”中的内容为参数,“毕业设计(论文)”代表自定义字符,“ I ”代表对比时忽略空格。
[0023]4-2(2 I), 2(3 I), 2(4 I), 2(5 I), 2(6 I), 2(7 I), 2(8 I), 2(9 I), 2(0 I), 2(111),2(111 1),2(,.),3(1.1 1),4(1.1.1 I):“4” 代表格式编号,见图 12 ;“2 (2 1),2(31),2(4 1),2(5 1),2(6 1),2(7 1),2(8 1),2(9 1),2(0 1),2(11 1),2(111 I)”代表依次将 “ 2 ”、“ 3 ”、“ 4 ”、“ 5 ”、“ 6 ”、“ 7 ”、“ 8 ”、“ 9 ”、“ O ”、“ 11”、“ 111 ” 替换成 “I” ; “ 2 (、.),,表示将“、”替换成”;“3(1.1 I)”表示本段开头与“1.1”相同,“I”表示忽略空格;“4(1.1.1 I)”表示本段开头与“1.1.1”不相同,“I”表示忽略空格,其他语句含义依此类推。
[0024]5)本发明排版系统内置格式命令构建编号,见图15,使用本排版系统编写“文本格式命令.txt” (ANSI格式),内容见图16,以下举例解释其含义。
[0025]2-4(1),2(1 I 2),1(1 2 2):“2”代表格式编号,见图 12 ;“4(I) ” 中 “4”代表图15中的格式命令构建编号,8卩“删除多余空格(本段)”,“()”中的内容为参数,“I”代表删除全部空格,其他则代表仅保留英文单词前的I个空格;“2 (I I 2)”中“2”代表“指定位置插入N空格(本段)”,第一个参数代表插入方式:“ I”为固定长度后插入,“2”为特殊字符后插入(即遇到指定字符时插入),“3”为在某类字符后插入(即遇到非指定字符时插入),第二个参数的内容由第一个参数决定,第3个参数为插入的空格数,故参数“I I 2”代表在第I个字符后插入2个空格;“1(1 2 2)”中方法“I”代表“插入分隔符(本段)”,第一个参数代表插入位置(“ I”为段前,其他为段后),第二个参数代表插入分隔符的类型(“7”为分页符,“8”为分栏符,“11”为换行符,“2”为分节符),第三个参数代表引用文本模板的第几节页眉、页脚格式(若为分页,该参数无效),故参数“I 2 2”代表在段前插入分节符,引用文本模板第2节页眉、页脚格式。文本模板的分节情况见图17。
[0026]8-3(,.),3(-.),4(0),2(3 图 0123456789.2):“8” 代表格式编号,见图 12 ;“3(、.),3(-.)”代表依次将“替换成”(若存在第3个参数,则表示到该位置停止替换,如3 (、.3)表示仅将前3个字符中的“、”替换成”);“4 (O) ”代表删除所有空格(但英文单词前保留一个空格);“2(3图0123456789.2) ”表示从第一个字符开始向后搜索,遇到非“图0123456789.”中包含的字符时,插入两个空格。其他语句含义依此类推。
[0027]6)创建新文档,本发明排版系统读取“识别命令.txt” (ANSI格式)中的命令语句,解析其命令要求,逐段验证该段落应属格式编号;若符合,则赋予格式编号,然后转向下一段落验证。所有段落验证完毕后,读取“文本格式命令.txt”中的命令语句,解析其命令要求,逆序逐段按照识别的格式编号进行格式修改,并将修改结果存入新的文档。新文档内容见图18、图19 (第一页为空白页,故未列出)。
[0028]7)导入“替换命令.txt”(ANSI格式),其内容见图20。格式“a(b) ”的含义为格式编号为a的段落,若a=0,则为全文起始位置(写在前面)或结束位置(写在后面);参数b=0代表格式编号为a的段落的起始位置,b=l表示格式编号为a的段落的结束位置;若存在多个格式编号为a的段落,则以第一个为准。故“O (O)-3 (O) ”的含义:从全文的起始位置到第一个格式编号为3的段落起始位置结束,用模板文件的对应部分进行替换。本例的效果为:在图18所示的新文档前插入文本模板中的封面页和目录页。
[0029]8)使用数据库对特定内容进行替换,数据库内容见图21。本发明排版系统提供下拉列表框供用户选择,如图22所示,系统根据用户的选择操作(示例中如用户选择第I条记录),定位到指定行(示例中是第I行),读取所有数据及相应的字段名;然后搜索新文档中所有与字段名相同的文本区域,并使用对应的数据进行替换,为使文本区域的长度在替换前后不发生变化,若数据的长度小于字段名η个字符,则用空格补足,若数据的长度超过字段名η个字符,则删除下一字段名前η个空格,从而保证下一字段名不错位。替换后的文档前两页见图23、图24 (后续页未发生变化,与图18、图19相同)。
[0030]9)编写“图表格式命令.txt”(ANSI格式),其内容见图25。“0-3(..),3( //),3( ),4 (O) ”,其中“O”代表对表格操作,右边的方法及参数的含义与文本格式命令相同。本发明排版系统读取图表格式命令,并解释执行,执行后的正文页见图26。
[0031]10)本发明排版系统读取“修改模板.doc”,以“〈%%>”为分界标志,如图8所示,将左边的字符替换成中间的字符,并对比中间、右边的字符格式,若有差异,则按中间字符的格式进行修改。修改后的正文页见图27?图30。
[0032]至此,完成所有排版内容。
【主权项】
1.一种模板独立的排版系统,其特征在于,包括: (1)文档及数据载入单元,用于载入源文件、文本模板文件、图表模板文件、数据库及修改模板文件; (2)排版命令制定单元,用于制定识别命令文件、文本格式命令文件、图表格式命令文件和替换命令文件; (3)命令解析及执行单元,用于读取排版命令、解析排版命令,并按照排版命令执行相关操作; (4)文件新建及保存单元,用于生成临时文档,以及将排版结果写入磁盘文件。
2.根据权利要求1所述的一种模板独立的排版系统,其特征在于:所述的文档及数据载入单元执行以下操作: a)载入源文件,将图表从源文件中抽取出来,并在原位置用特定字符按顺序进行标记,抽取出的图表存放在临时图表文档中;余下的文本存储在系统的字符串变量中,并保存到临时文本文档; b)载入文本模板文件,读取文本模板文件中的指定格式,并对这些格式进行编号; c)载入图表模板文件,读取图表模板文件中的指定格式; d)载入数据库及修改模板文件,读取数据库及修改模板文件中的数据及内容。
3.一种模板独立的排版方法,其特征在于,包括以下步骤: 51.制定排版模板和命令文件,包括文本模板文件、识别命令文件、文本格式命令文件、图表模板文件、图表格式命令文件、替换命令文件和数据库及修改模板文件; 52.导入待排版的源文件,提取其中的图表,存储于临时图表文档中;抽取图表后,在原位置用特定字符按顺序进行标记,并将余下的文本储存于字符串变量中; 53.导入文本模板文件,提取文件中的文本格式,并按照顺序依次编号,作为步骤S2中待排版源文件的文本参照格式; 54.读取识别命令文件,解析其中的识别命令,按照识别命令的要求,对步骤S2中的文本进行识别,并根据识别结果标识其对应步骤S3中的格式编号; 55.读取文本格式命令文件,解析文件中的文本格式命令,按照步骤S4中标识的格式编号对文本进行编辑和排版,并创建新文档保存; 56.导入图表模板文件,提取其中的图表格式; 57.读取图表格式命令文件,解析文件中的图表格式命令,对步骤S2中提取的图表进行编辑和排版; 58.将步骤S7中的图表按照步骤S2中预留的特定字符标记合并到步骤S5中的新文档中保存; 59.读取替换命令文件,解析文件中的替换命令,按照替换命令的要求,截取模板文件中的指定内容,对步骤S8中新文档的相应部分进行替换并保存; 510.读取数据库内容,如果步骤S9中截取的模板文件指定内容中含有特殊标记,则查找步骤S9中新文档的特殊标记位置进行填充; 511.读取修改模板文件,对步骤SlO中新文档的特定内容及格式进行修改,将修改结果保存到磁盘文件。
4.根据权利要求3所述的一种模板独立的排版方法,其特征在于:步骤SlO所述的数据库通过Microsoft Access软件编辑,与步骤S9中截取模板文件的指定内容相关联,通过替换方式对指定内容进行填充。
【专利摘要】本发明公开了一种模板独立的排版系统及方法,排版模板和排版命令独立出来,并不依赖于源文件,通过建立具有文档及数据载入单元、排版命令制定单元、命令解析及执行单元和文件新建及保存单元的排版系统,结合模板独立的排版方法,以克服现有排版系统及方法的不足,提高了排版系统和方法的通用性。
【IPC分类】G06F17-25
【公开号】CN104699664
【申请号】CN201510122837
【发明人】何伟平
【申请人】徐州工业职业技术学院
【公开日】2015年6月10日
【申请日】2015年3月19日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1