OpenOffice是一个免费的开源办公套件,它集成了允许开发人员用不同语言开发的API。Python-UNO允许你在Python环境下使用OpenOffice。简要介绍了Python-UNO的使用方法。
作为一个免费的开源办公套件,OpenOffice.org提供了一个强大和兼容的解决方案,这已经为它建立了良好的声誉。据它说,下载量已经超过5000万,可以在多个平台上运行。开发人员很难忽视这样的项目,这就是为什么OpenOffice.org提供API,允许开发人员在不同的语言环境中使用OpenOffice.org。
当然,你很难想象Python会被列入OpenOffice.org允许的语言列表,因为Python会让事情变得“太简单”。而Python-UNO只是让一切成为可能。OpenOffice.org使用通用网络对象。这项技术使OpenOffice.org能够兼容用不同语言编写的组件。Python-UNO提供了一个Python接口来使用。
Python-UNO包含在OpenOffice.org中,因此不需要安装其他任何东西。不幸的是,这有一个缺点。由于OpenOffice.org 2.0中包含的Python版本是2.3.5,因此不能使用最近添加的功能。当然,有些人试图解决这个问题,让OpenOffice.org与一些新的Python版本兼容。
也有一些linux发行版配置Python-UNO在默认安装Python时工作,比如Ubuntu。你可以运行Python,尝试导入uno模块,看看是否有效。如果可能的话,让我们开始使用Python-UNO。
连接OpenOffice.org
首先,我们联系OpenOffice.org。只有几个小步骤,很简单。在连接到OpenOffice.org之前,我们需要确保它一直在监听。这包括在启动时向它传递一个字符串。首先,确保OpenOffice.org完全退出(如果您使用的是Windows系统,还需要从系统盘退出OpenOffice.org),然后打开终端,切换到OpenOffice.org的安装目录,进入执行文件所在的目录。接下来,我们将打开OpenOffice.org书写器并传入一个参数,以允许OpenOffice.org监听我们之后建立的连接:
以这种方式打开的OpenOffice.org的外观与以普通方式打开的没有什么不同。我们传递的参数创建了一个UNO接收器,它将监听我们通过Python-UNO和OpenOffice.org API进行连接。在一个新窗口中打开程序所在的目录,找到Python版本的OpenOffice.org并执行,将进入交互解释器。另外,如果您知道您的Linux发行版中默认安装的Python中包含Python-UNO,那么可以照常打开Python。
第一步,当然是导入Python-UNO模块,名字叫UNO:
首先必须做的是导入一个本地组件上下文。如果你想确切地知道什么是组件上下文,它是用来做什么的,你可以自己谷歌一下。在这里,让我们稍微解释一下。上下文管理器由服务管理器和相关对象组成,它只是服务管理器存在的环境。
什么是服务经理?顾名思义,服务管理器用于管理服务。它的名字是对其功能的简单定义。最后说明服务。服务是与一系列特定任务绑定的对象。例如,一个特定服务负责加载和管理文档,另一个用于连接OpenOffice.org的设置。服务由服务管理器管理,它存在于组件上下文中。当然没那么简单,但这里不需要其他知识。
在简要介绍了组件上下文、服务管理器和服务的概念之后,让我们继续创建本地组件上下文。我们稍后将使用它来获取OpenOffice.org的组件上下文:
现在我们有了一个本地组件上下文。接下来,我们需要获得UnoUrlResolver服务。这项服务是用来连接OpenOffice.org的。我们需要使用服务管理器的createInstanceWithContext方法,它位于本地。服务管理器参数设置为我们想要的服务名称和上下文实例:
所以我们可以和OpenOffice.org联系。这很简单,只需调用一个方法,并将参数设置为我们启动OpenOffice.org作家时传递的参数。之后我们可以利用OpenOffice.org的组件上下文,通过OpenOffice . org的API来操作:
参数与启动OpenOffice.org时仅略有不同,除了“星际办公室”。添加“组件上下文”以请求OpenOffice.org的组件上下文。我们还在前面添加了一个协议(uno)。现在,我们已经连接到OpenOffice.org。
使用桌面服务
既然我们可以使用OpenOffice.org的应用编程接口,让我们操作文件。我前面提到有一个服务负责当前文档。该服务的名称为“com.sun.star.frame.Desktop”。通过这项服务,我们可以玩OpenOffice.org作家文件时创建的OpenOffice.org启动。首先,我们需要使用上面提到的createInstanceWrithContext方法来获取服务。参数是服务名称和上下文。
很好,现在我们有了桌面服务,我们有能力加载和管理文档。让我们先尝试修改当前文档。使用getCurrentComponent方法:
在修改文档之前,创建一个光标。很简单:
用光标,我们可以给文档添加一些东西。首先尝试添加一个简单的字符串:
执行上述代码后,您应该会在文档中看到一行额外的文本。添加换行符向文档添加换行符:
简单的缩进也容易实现。只需添加缩进“t”:
当然,重复添加文本是无效的,这也是我们需要操作光标的原因。比如我们要放大一点的字体。这很容易通过游标属性来实现。UNO对象包括可以通过简单方法调用修改的属性。在我们改变光标字体大小之前,我们首先得到当前的字体大小:
如您所见,字体大小属性的名称是“CharHeight”。调用另一个方法来修改此属性。让我们把字体大小改为20:
现在字体大小已经改变,我们可以在文档中添加一些字体大小为20的文本:
不仅仅是字的大小可以变,基本上什么都可以变。让我们更改字体和字体粗细:
谈论形式
我们工作中经常用到桌子。我们来看看Python-UNO中如何使用表。首先打开一个新文档:
开始使用新空白色文档上的表单。我们要制作的表格包含五个国家和每个国家的人口。所以这个表会有6行,其中一行是表头;还有两栏。以下是创建表格的命令:
当然,我们需要将表的行数和列数传递给人口。以下是初始化函数:
如果您查看打开的文档,您仍然看不到任何内容。您必须先插入此表单,然后才能看到它。表格插入类似于文本插入:
现在可以开始插入表格内容了。包括两个步骤:解释每个单元格的名称,然后插入文本。表格的第一行名为“A”,第一列名为“1”。这种命名模式持续到表的末尾,每个单元格的名称是行名和列名的组合。首先插入标题:
接下来,你可以填写国家信息:
结论
OpenOffice.org是一个强大的工具,尤其是它提供了可以被许多不同语言调用的应用编程接口。幸运的是,这些语言包括Python,或者Python-UNO。Python开发人员可以导入该模块并创建一个本地组件上下文,该上下文可用于连接OpenOffice.org的上下文。连接后,开发人员可以修改文档。虽然本文只涉及插入文本和表格以及改变字体属性,但OpenOffice.org的API也提供了很多功能。有许多方法可以修改文本和表格。虽然我们只谈了OpenOffice.org的Writer软件,但是OpenOffice.org套件中还有其他可以使用的应用。
从这篇文章开始,有很多功能值得探索。现在,您可以尝试编写一些脚本来自动创建文档。如需其他功能,可参考本网站:http://API . open office . org/docs/common/ref/com/sun/star/module-IX . html。
python大数据公司获得国防高级研究计划局资助
Python 32现已上市
Python 3.2最终阿尔法发布
记录您的项目(编辑-洛林)
http://www . devshed . com/c/a/python/python-and-OpenOFFiCE-org/
译者:阿尔斯通
Marco Education 2018 Python自动化运维开发实践面授班于2018年3月5日开课。Marco加盟BAT、豆瓣等一线互联网Python开发者,并根据当前企业需求深度定制Python开发人才,加入大量一线互联网公司:大众点评、饿了么、腾讯等制作环境真的是项目,课程由浅入深。从Python基础到Python高级,可以整合Python基础理论。手把手教学让你具备Python自动开发所需的前端接口开发、Web框架、大型监控系统、CMDB系统、认证堡垒机、自动处理平台等六项实战能力。让你从0变成年薪20万的Python自动开发人才。
1.《openoffice Python操作OpenOffice》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《openoffice Python操作OpenOffice》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/yule/1000633.html