首页> 中国专利> 一种第三方软件处理符合文档库标准的文档的方法

一种第三方软件处理符合文档库标准的文档的方法

摘要

本发明公开了一种第三方软件处理符合文档库标准的文档的方法,包括:在第三方软件打开符合文档库标准的原始文档时,预先设置于第三方软件中的插件调用文档库标准接口解析所述原始文档,并将原始文档的内容转换为所述第三方软件能够识别的内容,并以转换后的内容构成中间文档,所述中间文档的文档格式为所述第三方软件支持的文档格式;所述第三方软件打开所述中间文档,显示所述转换后的对象。应用本发明的方法,能够方便地实现在第三方软件中处理符合文档库标准的文档。

著录项

  • 公开/公告号CN101520728A

    专利类型发明专利

  • 公开/公告日2009-09-02

    原文格式PDF

  • 申请/专利权人 北京书生国际信息技术有限公司;

    申请/专利号CN200810100890.8

  • 发明设计人 王东临;

    申请日2008-02-25

  • 分类号G06F9/44(20060101);G06F17/21(20060101);

  • 代理机构11018 北京德琦知识产权代理有限公司;

  • 代理人王一斌;王琦

  • 地址 100089 北京市海淀区紫竹院路81号北方地产大厦5层

  • 入库时间 2023-12-17 22:31:46

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-02-28

    未缴年费专利权终止 IPC(主分类):G06F 9/44 专利号:ZL2008101008908 申请日:20080225 授权公告日:20120704

    专利权的终止

  • 2014-09-17

    专利权的转移 IPC(主分类):G06F9/44 变更前: 变更后: 登记生效日:20140827 申请日:20080225

    专利申请权、专利权的转移

  • 2014-04-09

    专利权的转移 IPC(主分类):G06F9/44 变更前: 变更后: 登记生效日:20140319 申请日:20080225

    专利申请权、专利权的转移

  • 2012-07-04

    授权

    授权

  • 2012-06-06

    专利申请权的转移 IPC(主分类):G06F9/44 变更前: 变更后: 变更前:

    专利申请权、专利权的转移

  • 2010-12-01

    专利申请权的转移 IPC(主分类):G06F9/44 变更前: 变更后:

    专利申请权、专利权的转移

  • 2009-10-28

    实质审查的生效

    实质审查的生效

  • 2009-09-02

    公开

    公开

查看全部

说明书

技术领域

本发明涉及文档库系统技术,特别涉及一种第三方软件处理符合文档库标准的文档的方法。

背景技术

文档库标准是目前一种对文档进行标准化处理和管理的操作标准。一般地,文档库标准由一系列接口定义组成,即所谓文档库标准接口。文档库系统是指对文档库标准接口的实现,提供对具体文档的实际操作,并将这些操作以文档库标准接口的形式提供给外部应用。

具体地,文档库系统是一种复杂的软件系统,提供对文档数据进行操作的基本功能,例如创建、存储、提取、展示、安全、修改、组织、检索等,具体见本申请人在先提交的申请号为CN200510131072.0的基础专利申请说明书。在该专利说明书中,描述了一种包括文档库系统、存储器、应用软件的文档处理系统,其中,文档数据存储在存储器中,文档库系统和应用软件通过一种标准接口连接起来,该标准接口根据预先定义的动作和对象或其他方式而定义。应用软件对文档的操作都统一成对一种预定义的通用文档模型进行的操作,并通过该标准接口向文档库系统发出指令,文档库系统按照应用软件的指令,对存储在存储器中的文档数据执行相应的操作。

UOML是目前提出的一种具体的文档库标准,它是国际权威标准组织OASIS下属UOML技术委员会制定的系列标准,或者中国信息产业部制定的标准号为S07020-T的系列标准。UOML同时也是基于XML、跨平台、与编程语言无关、与具体应用无关、定义了文档操作通用功能的文档操作语言。它抽象出操作版式文件的相关操作。UOML文档为可以通过UOML标准访问的文档,是UOML-accessable documet的简称。软件通过UOML标准提供的方法可以获取支持UOML标准的UOML文档中的内容。UOML标准提供一种互联互通的方式来降低企业开发成本及信息交流成本。

当前主流文件文档编辑软件都只支持一种或几种特定的传统文档格式。本发明中,将这些文档编辑软件称为第三方软件。现有的第三方软件缺乏直接打开符合文档库标准的文档(如UOML文档)的功能,同时也缺乏在该文档上进行编辑和保存等文档操作的方法。

为使第三方软件能够对符合文档库标准的文档进行操作,一种实现方式可以为:全面修改第三方软件,使该第三方软件支持符合文档库标准的文档(如UOML文档)。但是这种方式,需要第三方软件的厂商配合。

发明内容

有鉴于此,本发明提供一种第三方软件处理符合文档库标准的文档的方法,使第三方软件能够对符合文档库标准的文档进行操作。

为实现上述目的,本发明采用如下的技术方案:

一种第三方软件处理符合文档库标准的文档的方法,包括:

在第三方软件打开符合文档库标准的原始文档时,预先设置于第三方软件中的支持所述文档库标准的插件调用文档库标准接口解析所述原始文档,并将原始文档的内容转换为所述第三方软件能够识别的内容,并以转换后的内容构成中间文档,所述中间文档的文档格式为所述第三方软件支持的文档格式;所述第三方软件打开所述中间文档,显示所述转换后的内容。

较佳地,该方法进一步包括:

所述第三方软件根据用户指令,在所述中间文档上进行编辑;

在进行保存时,将编辑的新内容转换为符合文档库标准的形式加入所述原始文档中。

较佳地,所述将原始文档的内容转换为所述第三方软件能够识别的内容为:以链接和嵌入方式表示所述原始文档的内容;或者,将原始文档的内容转换为图像。

较佳地,所述以链接和嵌入方式表示所述原始文档的内容为:所述插件生成链接和嵌入对象,在该对象中保存所述原始文档内容的信息;

所述显示转换后的对象为:

根据所述对象中所述对象中保存的所述原始文档内容的信息,调用所述文档库标准接口获取所述对象对应文档内容的版面信息,并显示和/或打印。

较佳地,所述用于进行对象链接和嵌入的对象为:Windows平台下的OLE对象,或KDE平台下的KPART对象,或Gnome平台下的BABOON对象。

较佳地,所述将原始文档的内容转换为图像为:调用文档库标准接口获取所述原始文档内容的版面信息,用图像来记录该版面信息;

所述显示转换后的内容为:

根据所述图像对象的数据,在所述中间文档上绘制该图像。

较佳地,在进行所述转换时,将原始文档中的内容按页转换为所述第三方软件能够识别的内容。

较佳地,所述中间文档的文档格式为RTF格式、ODF格式、OpenXML格式或UOF格式。

较佳地,在形成中间文档时,该方法进一步包括:在第三方软件中,将中间文档中所包括的所述转换后的内容设置为无法修改和/或删除。

较佳地,所述将中间文档中的内容设置为无法修改和/或删除为:将所述转换后的对象的属性进行设置,通过锁定方式保证所述转换后的对象无法修改和/或删除。

较佳地,所述将编辑的新内容转换为符合文档库标准的形式包括:

将第三方软件编辑的新内容通过虚拟打印转换为新的符合文档库标准的目标文档。

较佳地,在加入原始文档前,进一步包括:

针对所述目标文档中包括编辑新内容的页,在所述原始文档中不存在对应页时,在所述原始文档中新增一页作为与编辑新内容的页的对应页。

较佳地,所述加入原始文档中包括:针对所述目标文档中包括编辑新内容的页,在所述原始文档的对应页中新建一层,将所述编辑的新内容写入该层。

较佳地,在进行保存时,该方法进一步包括:将编辑后的中间文档中新增的内容以中间文档的格式作为源文件嵌入所述原始文档中。

较佳地,在下一次利用所述第三方软件打开编辑并保存的所述原始文档时,

从该文档中提取上次保存时以中间文档格式保存的所述源文件,并将除所述源文件外、该文档中的其他内容进行转换、构成中间文档,将转换后构成的中间文档与所述源文件合并,所述第三方软件打开合并后的文档,显示合并后的内容。

较佳地,所述文档库标准为UOML标准。

由上述技术方案可见,本发明中,在第三方软件打开符合文档库标准的原始文档时,预先设置于第三方软件中的支持文档库标准的插件调用文档库标准接口解析所述原始文档,从而能够获取原始文档中的文档内容。然后,将原始文档的内容转换为所述第三方软件能够识别的内容,并以转换后的内容构成中间文档,其中,中间文档的文档格式为所述第三方软件支持的文档格式。这样,由于第三方软件能够识别中间文档以及该文档中所述转换后的内容,因此,第三方软件打开中间文档后,就能够显示转换后的内容,从而能够显示和/或原始文档内容。在对文档进行编辑时,第三方软件可以在打开的中间文档上进行编辑;在进行保存时,将编辑的新内容转换为符合文档库标准的形式加入所述打开的原始文档中。如上所述,一个第三方软件可以利用插件进行原始文档的处理操作,可以无需第三方软件的厂商配合,实现对符合文档库标准的文档进行处理操作。

附图说明

图1为本发明中第三方软件处理符合文档库标准的文档的方法总体流程图。

图2为本发明实施例中第三方软件处理UOML文档的方法具体流程图。

具体实施方式

为使本发明的目的、技术手段和优点更加清楚明白,以下结合附图对本发明做进一步详细说明。

本发明的基本思想是:在第三方软件中设置插件,利用插件将符合文档库标准的文档转换为第三方软件所支持的文档格式,从而对其进行处理操作。本发明中,将第三方软件要处理的符合文档库标准的文档称为原始文档。

图1为本发明中第三方软件处理符合文档库标准的文档的方法总体流程图。如图1所示,该方法包括:

步骤101,在第三方软件打开原始文档时,预先设置于第三方软件中的支持文档库标准的插件调用文档库标准接口解析原始文档,将原始文档的内容转换为第三方软件能够识别的内容,并以转换后的内容构成中间文档;第三方软件打开中间文档,显示转换后的内容。

其中,所谓支持文档库标准的插件是指能够调用文档库标准接口的一段插件程序。本步骤实现在第三方软件中打开并显示原始文档的操作。显示操作可以采用对象链接和嵌入的方式,也可以采用直接转换为图片进行显示的方式。其中,预先设置的插件首先调用文档库标准接口解析原始文档,将其转换为第三方软件能够识别的内容,再创建一个中间文档,用于保存转换后的内容,其中,中间文档的文档格式是第三方软件支持的文档格式。这样,就将原始文档转换成第三方软件支持文档格式的文档。于是,第三方软件可以打开该中间文档,显示转换后的内容,从而显示原始文档的文档内容。

在对原始文档进行显示后,优选地,如果第三方软件具备编辑功能,可以根据用户指令进行编辑和保存,具体可以按照如下步骤进行:

步骤102,第三方软件根据用户指令,在中间文档上进行编辑。

本步骤中,第三方软件可以在中间文档上进行文字编辑。

步骤103,在进行保存时,将编辑的新内容转换为符合文档库标准的形式加入所述原始文档中。

本步骤中,在保存编辑后的文档时,将编辑的新内容转换为符合文档库标准的形式,然后将转换后的内容加入原始文档中,从而形成编辑后的符合文档库标准的文档。

如上所示,采用本发明的方法,能够使第三方软件对符合文档库标准的文档进行处理操作,包括打开、编辑和保存。

下面通过具体实施例说明本发明的具体实施方式。在下面的实施例中,以UOML文档库标准为例进行说明。

图2为本发明实施例中第三方软件处理UOML文档的方法具体流程图。为支持对UOML文档的各种处理操作,需要安装有支持UOML标准的文档库系统,该文档库系统可以采用多种实现,例如采用单机版的文档库系统或客户端服务器版的文档库系统等,在此不做限定。

如图2所示,该方法包括:

步骤201,在第三方软件打开UOML文档时,触发插件调用UOML标准接口解析UOML文档。

其中,插件是预先开发的用于实现第三方软件和UOML文档间转换等处理操作的程序,它预先设置于第三方软件中,第三方软件发出打开UOML文档的指令后,即触发插件开始工作。

插件支持文档库标准是指能够调用文档库标准接口,从而能够实现解析UOML文档的功能。具体地,插件首先调用判断文档格式的UOML标准接口,判断要打开的文档是否为UOML文档,如果不是,则显示错误提示;如果是,则进一步调用解析文档的标准接口,对原始文档内容进行解析。

在上述进行UOML标准接口调用时,可以采用申请号为CN200510131072.0的专利申请中说明的方式进行。

步骤202,插件将原始文档的内容转换为所述第三方软件能够识别的内容。

如前所述,为实现UOML文档的显示,可以采用对象链接和嵌入的形式或者采用图像显示的方式。其中,对象链接和嵌入技术支持在一种格式的文档中显示其他格式文档内容的功能。

由于存在上述两种不同的方式,因此本步骤中转换后的内容也区分为两类。一类是链接和嵌入对象,一类是图像对象。这里的链接和嵌入对象,是指文档库系统所能生成及解析的链接和嵌入对象。

具体地,若采用对象链接和嵌入方式,针对不同的操作平台,转换后的对象也不同。一般地,Windows平台下将转换为OLE对象,KDE平台下将转换为KPART对象,Gnome平台下将转换为BABOON对象。对于对象链接和嵌入方式,不同操作平台下的转换方式相同,这里就以Windows平台下转换为OLE对象为例说明具体转换过程,包括:插件将步骤201中解析后的文档内容生成OLE对象,例如将每页UOML文档内容转换为一个OLE对象,在该OLE对象中保存解析后的文档内容信息,优选地,还可以进一步包括解析该OLE对象的软件信息,即文档库系统信息。具体地,在该OLE对象中保存的解析后文档内容信息可以有多种形式,例如文档内容的位置信息,即文档名和页码链接,或者,实际的页面数据,或者,将文档内容压缩后的压缩包信息等。

若采用图像显示的方式,则在本步骤中,调用文档库接口标准获取文档相关部分的版面信息,用图像来记录该版面信息,例如将一页UOML文档内容转换为一张图像。

具体在进行上述转换时,可以将UOML文档的每一页按照上述方式进行转换。

经过本步骤的操作,已经将UOML文档的文档内容转换为第三方软件能够识别的内容形式,第三方软件是以文档为载体对文档内容进行处理的,因此,需要将上述转换后的对象保存在一个文档中,才能被第三方软件处理。

步骤203,以步骤202中形成的转换后的内容构成中间文档。

本步骤中构成的中间文档的文档格式为第三方软件能够支持文档格式。这里一般可以采用如下的文档格式:RTF文档格式、ODF文档格式、UOF文档格式和OpenXML文档格式。由于上述文档格式的通用性较好,因此可以选择这些文档格式作为中间文档的文档格式。当然,也可以采用其他第三方软件支持的任意文档格式。

以RTF文档格式为例,具体构成中间文档的方式为:创建一个RTF文档格式的文档(下文简称为RTF文档),按照步骤202中转换后的各个内容间的位置关系,将所有内容插入该RTF文档中。例如,步骤202中将UOML文档的每一页文档内容转换为一个OLE对象,则本步骤中,将第一页文档内容转换后的OLE对象插入RTF文档的开头位置,然后依次在其后插入后续页的文档内容转换后的OLE对象。

步骤204,第三方软件打开形成的中间文档,显示转换后的对象。

由于中间文档的文档格式是第三方软件支持的文档格式,因此第三方软件可以打开该中间文档。在进行中间文档中对象的显示时,根据对象类型的不同,具体显示方式也不相同。

具体地,当采用对象链接和嵌入方式时,转换后的内容为OLE对象等用于进行对象链接和嵌入的对象。以OLE对象为例说明这类对象的显示,包括:当显示一个OLE对象时调用文档库标准接口,获取OLE对象对应文档内容的版面信息,并显示和/或打印该文档内容。在调用文档库标准接口时,如果该OLE对象中包括文档库系统信息,则可以根据该文档库系统信息,进行文档库标准接口的调用。具体地,根据OLE对象中保存的文档内容信息显示文档内容时,根据步骤202中保存的文档内容信息的具体形式不同,提取相应的文档内容,进行显示。例如,若步骤202中OLE对象保存了文档内容的位置信息,即文档名和页码链接,那么在进行显示时,文档库系统根据文档名和页码链接找到要显示内容的位置,显示该OLE对象对应的页面数据。

当采用图像显示方式时,转换后的内容为图像。在进行显示时,直接根据保存的图像数据绘制文档内容。

上述两种方式均能够实现文档内容的显示,其中,利用对象链接和嵌入方式进行显示时,转换后的对象需要的存储空间较少,但是显示时需要系统中存在能够显示UOML文档的软件(例如UOML阅读器等);利用图像显示方式时,转换后的对象数据较大,占用存储空间较大,但是显示时不需要利用UOML阅读器等,可以直接显示。

经过上述步骤201~204的操作,即可以实现在第三方软件中打开和显示UOML文档的功能。下面就在第三方软件中对打开的UOML文档进行编辑和保存的具体实现方式进行详细介绍。

步骤205,第三方软件根据用户指令,在打开的中间文档上进行编辑。

第三方软件根据用户通过鼠标、键盘等输入的指令,在中间文档上进行编辑。例如,键入新文字、图表等。编辑的新内容可以位于转换后的内容(例如OLE对象)之上,或者,位于所有转换后的内容之后。以将每个页面作为一个OLE对象或图像为例,编辑新内容时,当编辑的新内容位于转换后的内容之上时,也就意味着在中间文档格式的文档中对应页面上编辑内容;对于没有新增内容的页面,就意味着在中间文档格式的文档中对应页面上是空白的。

为保证打开的UOML文档内容不被修改,优选地,可以通过设置属性拒绝第三方软件改变转换后的对象。例如,通过锁定方式,使第三方软件不能删除OLE对象或图像对象等,也不能改变OLE对象或图像对象等的大小,以及不能在两个对象间插入新的内容。

步骤206,当进行保存时,将编辑的新内容转换为UOML文档的形式加入打开的UOML文档中。

本步骤中在进行文档保存时,将第三方软件编辑的新内容利用虚拟打印技术转换为UOML文档形式,然后将转换后的内容保存到原UOML文档中,形成新的UOML文档。

虚拟打印技术是一种通过虚拟打印接口生成文档的技术,由于该技术不需要通过解析文档的格式获取文档信息,所以支持一切可以打印的文档格式。制作精良的虚拟打印机可以象真的打印机一样,软件可以在打印文档时选择它作为打印机,并实施打印。不同的是,它不需要硬件支持,打印的结果即生成的文件。该技术属于通用技术,在这里不再详述。

具体实现时,可以将编辑的新内容利用虚拟打印技术保存为一个新的UOML文档,再根据编辑的新内容与原UOML文档转换成的对象间的位置关系,调用UOML标准接口将新生成的UOML文档与原UOML文档合并为一个文档。详细地,插件调用第三方软件的打印功能,对编辑的新内容解析后生成打印数据,这里,生成的打印数据是以页为单位的,如果该页存在新编辑的内容,则该页上的打印数据为相应的编辑新内容,如果该页不存在新编辑的内容,则该页为空白页。插件将生成的打印数据送入预先设置的虚拟打印机,虚拟打印机根据具体的打印数据调用生成UOML文档的UOML标准接口,生成新的UOML文档。最后,将新生成的文档与原UOML文档合并。在具体合并时,判断在原始UOML文档中是否存在目标文档中包括编辑新内容所在页的对应页,如果是,则将两个文档中相应页合并为一页,如果新生成的文档中增加了新的页码,则将该页作为原UOML文档中新增的一页。在将两个相应页中的内容合并时,如果新生成的文档中该页为空,也就是该页没有新编辑的内容,则将原UOML文档中的该页作为合并后文档中的相应页;如果新生成的文档中该页有数据内容,也就是在该页有新编辑的内容,则将新生成文档中该页作为原UOML文档中该页内新建的一层。从而生成包含编辑新内容和原UOML文档内容的UOML文档。

或者,具体实现时,也可以直接利用虚拟打印技术将编辑的新内容转换为UOML文档格式的文档内容,根据原UOML文档,将新生成的文档内容插入到原UOML文档中的相应位置上。详细地,第三方软件对编辑的新内容解析后生成打印数据,该打印数据与前述相同,是以页为单位的,插件将该打印数据和原UOML文档信息送入预先设置的虚拟打印机。这里,文档信息可以是该文档的保存路径等。虚拟打印机根据接收的原UOML文档信息提取该UOML文档的内容,比较该UOML文档和编辑的新内容生成的打印数据。如果编辑新内容所在页的页码在原UOML文档中也存在,则意味着用户在原UOML文档的该页上增加了内容,虚拟打印机在原UOML文档的相应页中创建一层,该层中保存在该页上增加的新内容。如果编辑新内容所在页的页码在原UOML文档中不存在,则意味着用户在原UOML文档的后面新增了页,并进行了编辑,虚拟打印机在原UOML文档后增加新页,保存对应的编辑后内容。

步骤207,将编辑后的中间文档中新增的内容以中间文档的格式作为源文件加入UOML文档中。

为保留以中间文档格式新编辑的内容,将编辑后的中间文档中新增的内容以中间文档的格式进行保存,也就是说,将编辑后的新内容进行保存。例如,将RTF文档中新编辑的内容,以RTF文档格式进行保存。并将以中间文档格式保存的新编辑内容作为源文件加入UOML文档中。

采用这种方式进行文档保存后,在第三方软件下一次打开该编辑后的UOML文档时,可以直接获取该UOML文档的源文件,从而不需要重新进行转换过程,而可以直接将中间格式的源文件进行显示;对于UOML文档中的其他内容仍然通过前述的步骤201~204的方式进行转换后显示。

一般地,在具体进行上述编辑后的UOML文档打开和显示时,从该UOML文档中提取上次保存时以中间文档格式(例如RTF格式)保存的所述源文件,并将除所述源文件外、该文档中的其他内容进行转换、构成中间文档,将转换后构成的中间文档与所述源文件合并,第三方软件打开合并后的文档,显示合并后的内容。在此过程中,有可能是将最近N次编辑形成的中间文档和N次以前的原始文档合在一起,并进行打开和显示。

除上述打开方式外,在第三方软件下一次打开该编辑后的UOML文档时,还可以将所有内容按照前述步骤201~204的方式打开步骤205形成的编辑后的UOML文档。

以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号