OpenOffice.org 是一套跨平台的办公室软件套件,能在
Windows、
Linux、MacOS X (X11)和
Solaris 等操作系统上执行。它与各个主要的办公室软件套件兼容。OpenOffice.org 是免费软件,任何人都可以免费下载、使用及推广它。
主要模块
电子表格
演示文稿
绘图
数据库
公式
最新中文
正式版:Apache_OpenOffice_incubating_4.1.6_Win_x64_install_zh-CN。
最新版本
OpenOffice. org 3.2.0(2010-2-17)
(Windows,
Linux,Solaris Intel/Sparc)
OpenOffice. org 3.3.0 (2011-1-27)
(Windows, Linux,Solaris Intel/Sparc)
Apache OpenOffice™ 3.4(2012-5-8)
Apache OpenOffice 3.4.1 (2012-8-23)
Apache OpenOffice 4.0.0 (2013-07-23)
软件发展
成立背景
StarDivision 是 StarOffice 的创始公司,八十年代中期在德国创立。升阳在1999年收购 StarDivision 之后,于2000年6月推出 StarOffice 5.2,并将大部分 StarOffice 的
源代码及相关开发技术移交给
自由软件社区 OpenOffice 。StarOffice 6.0 和以后的版本都会以 OpenOffice为基础。
发展历史
OpenOffice. org来自上世纪八十年代中期在德国创立的一家软件公司Star Division,它生产一种叫做StarOffice的
办公软件,市场主要集中在欧洲。因为价格低廉、稳定、
跨平台、功能充足等优点获得了用户的好评。
Sun Microsystems意识到市场上需要这样一种替代
专有软件的产品,并且认为公司的愿景与策略和StarOffice的技术背景都与这样的
市场需求和趋势相吻合。于是Sun在1999年8月收购了Star Division公司,并于翌年7月资助建立了OpenOffice. org社区。同年10月,公布了StarOffice绝大部分
源代码(大约800万行),由此成为世界三大
开源社区之一(另外两个是Mozilla和
Apache);12月,发布了OpenOffice. org XML
文件格式规范。2001年7月,OpenOffice. org
开发工具包发布。2002年5月,OpenOffice. org 1.0正式发布。2003年3月,OpenOffice. org 2003首届年会在德国
汉堡召开。2003年10月,OpenOffice
.org 1.1.0 发布。
迄今为止OpenOffice. org已经发布了1.1.2版本,支持Windows、Linux/x86、Linux/PowerPC、Solaris/Sparc、Solaris/x86、
FreeBSD和
Macintosh等7种
CPU/
OS平台,正在进行另外10种平台的移植,支持的语言也达到了42种。统计显示5,截至2004年6月,OpenOffice. org已经被下载超过2600万次;电子
邮件列表的注册人数也超过了2万4千人,已经有434个人和团体签署了《共同版权委托协议》,承诺为OpenOffice. org社区贡献代码。OpenOffice. org现在已经成为全球领先的跨平台、全功能、多语言、公开对象接口、可扩展文件格式的开源
办公软件。
实际上,OpenOffice. org不只是一个办公
软件产品,它也是一个
开发平台,开发者可以基于它提供的
应用程序接口组建自己的产品,设计并实现完整的解决方案;它也是一个
网络社区,世界各地成千上万的用户和软件开发者每天都在这里交流;它还是一种信念:办公软件这种生产力工具已经成为社会
信息基础设施的必要组成部分,而OpenOffice. org正是通过
开放源码社区来使之为更广泛的人群服务,推动整个社会的信息化水平。
发展轨迹
开放源码的时代背景
上世纪90年代开始的Internet的爆炸性发展给个人和整个
软件产业都带来了一场巨大的变革。随着
互联网络的高速发展,传递信息的速度越来越快,而发布信息的成本却在不断地降低。传统专有软件商在软件发布和维护成本不断降低的同时,仍然试图通过昂贵的许可证方式分发软件。而消费者希望能够快速、廉价甚至自由地获得具有
必要功能的、稳定和可用的产品。这样就凸现了一个原先并不明显的矛盾:前互联网时代的版权法规限制着软件和
信息产品在网络上的自由传播,称之为“盗版”,普通大众需要一种合法的、成本可接受的方式来获得必要的软件和信息产品。有需求就有市场。起源于80年代的自由软件和
开放源码运动在潜行了相当长一段时期之后,从此具有了适合的土壤而蓬勃发展起来。
对于计算机的普通用户来说,具有文字处理、
电子表格、
演示文稿、
数据图表、公式编辑、简单绘图和
图片处理等功能的
办公软件已经成为一种“生产力软件”,也就是能够大幅提高生产力的基础软件。但是占据
市场份额超过90%的
Microsoft Office却一直是价格昂贵的专有软件,其中的大部分功能个人用户很少用到。所以对消费者来说,它逐渐地已经成为一种奢侈品,然而现在的大部分用户因为专有文件格式被锁定在其上,不得不继续使用其升级产品。广大用户希望能够出现一种替代昂贵专有办公软件的廉价、稳定、具有足够功能并且可用的办公软件。
软件设计
程序设计
OpenOffice org 的
API 以
UNO (UniversalNetwork Object) 写成,所以本身是
电脑语言中立的。现在来说,OpenOffice org主要是以 C++ 撰写的,但也能以
Java(TM) 来撰写。
OpenOffice org 正在寻找义工协助撰写 C 的 Binding,希望在不久的将来也能以 C 来撰写 OpenOffice org。另外,除了无电脑语言的限制外,完成了的外挂模块也可以直接在不同的操作系统平台上使用。
升阳所公报的“Foundations of Office Productivity in a Networked Age” 道出了 OpenOffice org 的技术进程计划及OpenOffice org源码规划概论。不过因为 OpenOffice org 是
开放源码软件,所以 OpenOffice org 的社区需要负起完成 OpenOffice org 任务宣言的责任。
授权声明
在源码方面,OpenOffice org用的是双重
授权法组织架构
OpenOffice org是主计划名称。在OpenOffice旗下还有二十个以上的计划。这些计划可以分为三大类:
计划类型 说明
公认的计划 包括了大部分技术性与一些非技术性的计划。这类计划的领袖拥有
投票权。
国际化计划 这类计划主要是为以非英语为
第一语言的人士而设的。好像这个中文计划,就为大家提供了中文的说明与教学文件,以及我们所共同关心的信息。
试验计划 这类计划是仍在试验阶段的计划。这些计划都是由 OpenOffice社区协助的。一般来说,成功的计划都会在半年以后由试验计划转为公认的计划。
软件特点
Office org 不仅是五大组件的组合,而且与
同类产品不同的是,本套件不是独立软件模块形式创建的,从一开始,它就被设计成一个完整的
办公软件包。
* 所有的包有类似的外观,易于使用,如“样式”等“一次学会到处使用”的工具。OpenOffice org保持与您的电脑类似的外观——您一旦改变您的桌面,OpenOffice org也会相应改变。
* 组件间的相同工具用法相同——例如, Writer 里面使用的
绘图工具在 Impress 和
Draw 里面您也能用到。
* 您不必知道哪个
应用程序用于创建哪个特殊文件——您使用“文件”就可以“打开”任何openOffice org 文件,正确的应用程序将会运行。
* 所有的包共享一个拼写
检查工具,如果您改变一个组件包里面的“选项”,在其他组件包里也会同时改变。
* 所有组件间资料可以轻松转移。
* 所有的组件文件可储存为 OpenDocument 格式(新的办公文档
国际标准),这种基于 XML 的格式相比同类产品的格式,
磁盘存储更合理,任何兼容 OpenDocument 标准的软件均可以访问您的数据。(注:
Google的网上
办公软件使用 OpenDocument 格式。)
* 所有发布的版本都基于相同的开放许可证——没有隐性费用
与Sun和StarOffice的关系
从历史上看,OpenOffice org来源与StarOffice,它在OpenOffice org成立前的最后一版是5.2。在Sun把StarOffice的绝大多数源码开放之后,StarOffice也是基于OpenOffice org来开发的。也就是说OpenOffice org是Sun资助的,但是不属于Sun,StarOffice才是Sun所有的产品。而Sun所提供给OpenOffice org社区的
源代码一经发布,就无法收回。Sun从此无法关闭OpenOffice org,因为它是属于
公有领域的。由于StarOfficeTM这个商标已经被注册了,Sun就在
东亚地区为StarOffice注册了StarSuiteTM这个商标,StarOffice和StarSuite实际上是同一产品的西方和东方语言版本。
因为StarOffice的源码里含有少量的第三方代码,而这些代码是Sun付费才获得许可在StarOffice中使用的,所以OpenOffice org并不包括这部分源码。这些不可公开的代码实现以下功能:
某些字体,特别是
亚洲语言字体(例如方正
宋体、方正黑体等);
数据库模块(StarOffice中包含了Software AG公司的数据库Adabas D);
一些亚洲语言的增强功能;
某些文件过滤器。
事实上,现在文档模板和剪贴画在OpenOffice org社区里已经可以找到比较丰富的资源,桌面数据库现在也已经有了比较成熟稳定的开源产品,亚洲语言的增强功能和某些特定文件过滤器也并不是至关重要的功能,但是缺乏丰富的字体,可以说是OpenOffice org和StarOffice相比的一个最大的缺点。这也跟现在没有质量很好的
开放源码字体有直接的联系,优秀中文字体的许可证是相当昂贵的,而OpenOffice org这样的
非盈利组织无法负担地起这样高昂的费用。
License问题
OpenOffice org采用GNU通用公共许可证(
GPL)和Sun工业标准源码许可证(Sun Industry Standards Source License,SISSL)8的“双许可证”方式对源码进行许可;采用独立的公共文档许可证9(Public Documentation License,PDL)对发布在OpenOffice org网站上、但不期望集成进软件的绝大多数文档进行许可。
“双许可证”方式意味着要么应用
GNU GPL许可证,要么应用SISSL许可证。当应用GPL许可证的时候,OpenOffice org源码中的库和组件功能将根据GNU
LGPL进行许可。由于LGPL与GPL完全兼容,这样就能够鼓励更多的人参与到OpenOffice org
社区建设中来。
SISSL则是为商业
应用设计的。由于GPL许可证对于自由复制、修改、发布等权利的严格保证,某些软件商会因此而受限、不能参与到
开放源码社区中来。OpenOffice org的双许可证方式解决了这个问题,他们可以选择根据SISSL进行许可。SISSL是经过开放源码促进会(
Open Source Initiative,
OSI)确认的开放源码许可证10,它规定在被许可者承诺保证“标准”一致的条件下,可以分发软件但不公开修改过的
源代码。这里的“标准”是指OpenOffice org的XML文件格式规范11,和OpenOffice org的
应用程序接口规范12。
软件应用
开源社区
OpenOffice org本身优良的性能促进了它的应用。现在世界范围内几乎所有的Linux发行版都附带了OpenOffice org或其衍生软件。OpenOffice org的使用者还建立了一些组织和网站来推广OpenOffice org的应用,比如OpenOffice org文档项目13、OpenOffice org论坛14、关于附件和模板的OpenOffice org Extras15、关于宏的OpenOffice org Macros16、OpenOffice org帮助在线17、Taming OpenOffice org18。GetOpenOffice org19、ByteBot net20、ClueSheets21、Itrainonline22和Digital Distribution23等网站也已经开始提供OpenOffice org的在线
培训服务。
网上书店上关于OpenOffice org的使用类书籍已经有几十本,并且还在不断增加。关于OpenOffice org的技术类书籍也已经出版了一些,例如关于XML文件格式要义的《OpenOffice org XML Essentials》24和《OpenOffice org Macro Explained》25。
亚洲地区的一些
国家和地区也在积极推广OpenOffice org的应用。日本建立了OpenOffice org文档翻译项目26和用户组织27;韩国也建有OpenOffice org用户组织28;中国
台湾地区的OpenOffice org应用也非常活跃,
台南县教育网建立了“OpenOffice org补给站”29,台湾高性能网络
计算中心也建立了OpenOffice org
讨论组30,有些个人爱好者31建立了个人维护的OpenOffice org论坛,甚至还长期提供提高中文版面效果的独立补丁(该补丁已加入OpenOffice org
源代码的CVS服务器)和
安装包。
衍生软件
自从OpenOffice org 1.0公布以来,有些地区,特别是亚洲地区,根据OpenOffice org的双许可证方式发布并包装了具有本地特色的
办公软件。比如Pladao Office32就是为了提高泰文的本地化,依据LGPL/SISSL和JCA协议8而定制的OpenOffice org;BharateeyaOO33是印度信息通信
技术研究培训中心为了提高OpenOffice org对印度各种方言和
民族语言的支持而资助的加强本地化的项目。
非洲地区也开始了为本地民族语言基于OpenOffice org进行本地化的公益项目。
国内一些软件企业根据SISSL在OpenOffice org的基础上进行中文化、定制化和扩展功能的开发。比如中文俩仟的
RedOffice、
金山的KingStorm飓风Office、
中标软件的
中标普华Office、共创开源的共创Office、即时软件的即时全能办公室、KaiSource公司的KaiOffice等。
中国有55个
少数民族,除了
回族和
满族已基本不使用自己的民族语言和文字以外,其他53个民族仍在使用的民族语言有72种。其中29个民族有与自己的民族语言相一致的文字,由于有的民族有一种以上的文字,所以这29个少数民族共有54种民族文字34。
少数民族语言文字在少数民族社会生活种起着十分重要的、其他民族的
语言文字无法替代的作用,所以为这些语言文字提供信息化手段是提高全国整体信息化水平的重要组成部分,是延续多民族的
传统文化的重要手段。
为了实现支持民族语言的跨平台
信息处理系统,
国家863计划设立了重大软件专项课题“民族语言版本
Linux操作系统和办公套件研发”35。该专项中的办公套件就是在OpenOffice org的基础上针对藏文、蒙文、维文等主要民族语言提升本地化的水平,以期达到实用性的效果,具有很高的政治意义和社会意义。该项目已经取得阶段性成果36。
用户市场
早期OpenOffice org的用户主要分布在欧洲地区,这和OpenOffice org起源于德国、所以西方语言支持比较好有很大关系。欧洲的很多政府机构、公司、学校、
非盈利机构甚至个人都在广泛使用OpenOffice org。Jupiter Research在2003年的一项研究报告中认为OpenOffice org在小型
商业机构的市场份额已经达到6%,另有3%在2004年有应用计划。
团体用户在削减IT预算的时期,更加注重于从降低总
持有成本的角度来考量。德国慕尼黑政府经过一年的评估,最近决定将市政当局的14000台PC从
Microsoft Windows/Office迁移到Linux和OpenOffice org,这一降低政府开支的举措引起了各国政府的广泛关注,具有强烈的
示范效应。
随着OpenOffice org的不断推广,其他地区的用户也开始注意和尝试OpenOffice org。
北美和
拉美地区的一些企业、学校、和政府机构也在评估将OpenOffice org作为日常办公套件的可行性,并已经开始了试用。37
OpenOffice org所具有的优秀特性使它获得了广泛赞誉。38例如Linux Format 2001年读者选择奖“最佳
商业软件”;XML Journal 2002年读者选择最终奖“最具创意的XML应用”;
Linux Journal 2002年编辑选择奖“最佳
办公软件”,2003年读者选择奖“最受欢迎的办公软件”;Open for Business 2003年开放选择奖“最佳办公软件”;O'RELLY下属的OSDir com 2003年编辑选择奖“桌面
开源软件最佳应用”,等等。
社区信息
项目
OpenOffice org社区内的资源是以项目的
形式组织起来的,分为四大类:理事会、成熟类41、孵化类42、本地语言类43、网站资源。理事会类包含了与
社区管理运作相关的信息,网站资源类包括OpenOffice org下载、
技术支持、开发资源的信息。
成熟类项目是指那些包含
核心技术、或者
关键用户信息的项目,现在共有22个。比如
应用架构、
组件技术、
应用程序接口、XML文件格式、编译工具和环境、安装工具、数据库访问、
图形系统层、
用户界面、文字处理、
电子表格、图形应用、语言模块、本地化、移植、文档、质量保证、
市场推广等等。成熟类项目通常是社区开发者关注的焦点。
孵化类项目用来给社区成员提供测试想法的空间。这些想法可能是编程性的,也可能不是。只要能表明想法对社区明显的支持,任何社区成员都有权利创建一个孵化类项目。现有的孵化类项目共11个,包括:参考文献、
商务拓展、软件发布、
群件、
KDE集成、
项目管理、脚本、
技术规范、社区统计、用户FAQ等。
本地语言类项目用来以用户的本地语言提供更多信息和资源,相关的工作包括翻译OpenOffice org社区内的资料,介绍本地语言版本内所特有的资源和信息等。现在已经包含的本地语言包括:汉语、
阿拉伯语、
印地语、日语、韩语、
老挝语、
泰米尔语、泰语、
越南语等37种语言。其中的汉语项目--“OpenOffice org中文计划44”是由
台湾地区的几名志愿者维护的,支持繁体和简体中文两个版本。
理事会
OpenOffice org社区由社区理事会39进行管理,理事会章程40也是由社区成员起草,经过全体社区成员讨论和修改,几乎以全票通过。理事会是由社区成员志愿组成的非自治组织,建立理事会的目的是在战略规划与
资源分配、协调与资助者和公众的关系、在整个社区内提供仲裁这些方面提供指导。理事会可以调节冲突并为社区成员提供论坛,它也可以对项目的目标发表意见。理事会除此之外的权利在章程中被严格限制。
理事会由九名成员组成,这些成员都是各个项目的代表,他们也基本上都是项目中活跃的贡献者,在若干方面
颇有建树,获得了其他贡献者的尊敬。这九名理事会成员包括:
五名成熟类项目代表,其中有一名作为项目领导的Sun雇员,一名作为项目领导的非Sun的程序员,一名非程序性项目的管理者,其他两名项目领导或社区管理者;
两名本地语言类项目代表,从成熟的本地语言类项目领导中选出;
一名社区贡献者代表,来自于孵化类项目领导和杰出成员;
一名Sun公司代表。
理事会每月至少召开一次会议,如有必要也可临时召开。会议以互联网中继聊天(Internet Relay Chat,
IRC)的形式召开,会后通过
电子邮件确认
会议记录。任何社区成员都有权查看会议记录,并向理事会提案。
参与贡献
OpenOffice org社区欢迎公众对OpenOffice org的关注与支持,为此建立了必要的设施使得
开放源码技术能够被所有感兴趣的参与者获得。参与者可以很方便地
下载软件、获取技术支持、以及开发资源。
实际上无论角色如何,每个人都可以对OpenOffice org项目提供帮助。参与越多则越能获得他人的信任和支持,项目的长期有价值的贡献者会获得直接向
代码库提交代码的权利。OpenOffice org网站上注册的用户都是OpenOffice org的“成员”,社区鼓励成员参加到项目中并订阅该项目的电子邮件列表。参加到项目中的成员首先的身份是“观察员”,如果对项目的贡献频繁并确有价值,就能够获得“开发者”的身份,拥有对代码库的写权限,只对
项目文档有写权限的成员称之为“内容开发者”。开发者在提交不止于微小改动的代码前必须要签订《共同版权委托协议》8。项目开发者定期选举项目领导,项目领导负责指导该项目的方向,确保相关问题都被解答,并负责创建友好并相互支持的
社区环境。
现在已经有很多个人和团体对OpenOffice org社区作出贡献。
Debian、SuSE、RedHat对软件打包,
GNOME、KDE、Ximian对桌面集成与用户界面修饰方面都有贡献。Ximian甚至还建立了专门的OpenOffice org网页45提供
非官方的资源。虽然国内OpenOffice org及其衍生软件的应用已经非常广泛,可惜的是,迄今为止只有寥寥几人签订了《共同版权委托协议》承诺为OpenOffice org社区贡献代码。
其实开发者可以参与OpenOffice org社区的方面很多,编写脚本与宏、扩展与集成组件、编译除错并提高源码、向新平台移植、本地化与国际化、撰写使用与开发文档、测试与质量保证等等。都是不错的开发型入手点。另外,技术支持和市场推广也是不错的非开发型参与方式。
OpenOffice org社区由
CollabNet提供主机并负责日常管理,代码库采用
CVS维护,以IssueZilla管理“问题”。社区成员的主要交流方式包括电子邮件与
邮件列表、IRC、
网络日志(Blog)、时事通讯(News Letter)等。社区成员也会经常为媒体撰写文章并接受访问。由于OpenOffice org社区成员来自于世界各地,所操母语千差万别,为了沟通方便起见广泛采用英语作为通行语言。
其他社区
全世界众多开源社区能够进行交流的基础是他们都认同
开放源码软件的基本理念。OpenOffice org社区作为三大开源社区之一,在获得
开源软件领域广泛关注的同时,也获得了普遍的支持,与其他开源社区建立了密切的
协作关系。比如:
Mozilla社区为了实现OpenOffice org在Mozilla浏览器中的插件而密切合作;
Apache社区为OpenOffice org提供了优秀的XML/XSLT46软件,并且在POI47项目中与OpenOffice org合作将
MS Excel文件格式文档化48,它的Cocoon49项目及其
子项目Forrest50在
服务器端能够把OpenOffice org
无缝集成进
内容管理系统;
OpenGroupware51社区与OpenOffice org群件项目52协作以提供邮件、日志、
即时消息和白板等功能,其客户端软件Glow正在开发中;
CPAN53社区中的OpenOffice::OODoc54项目支持Perl对OpenOffice org文档的访问;
Zope55/
Plone56社区用
Python实现了
内容管理系统/架构,OpenFlow57以此为基础实现了
工作流管理系统,它们现在都是非常流行的开源软件。Zope中所包括的CMFOODocument58和ZooDocument59支持对OpenOffice org文档的访问,由此OpenOffice org可以作为内容
著作工具而集成进该内容管理系统。基于Zope/Plone的软件商icoya60就提供了包含OpenOffice org的内容管理解决方案。国内也有一些Zope/Plone的相关社区,例如:Python
中文社区61、Zope/Plone中文社区62、中文Zope
用户组63,
中蟒(中文Python)64等等。
OpenOffice org及其它相关开源社区相互协调、
共同发展,就可以为个人消费者和团体用户提供更优秀的软件以及整体解决方案。比如在办公自动化、
电子出版、
工作流、内容管理等领域,OpenOffice org及其解决方案就有广阔的应用前景。
OpenOffice对于中文的支持:软件提供中日韩文字支持,但对于
中文输入法的支持存在缺点,在Word中输入中文标点可能在保存后再次打开时,有时将标点附近词句误识别为
超链接,希望此信息对中文用户有帮助,同时希望OpenOffice改进的更完美。
更名信息
2012年6月,
Oracle宣布将OpenOffice赠送给Apache基金会,Apache基金会通过投票接纳了OpenOffice,2012年10月份OpenOffice改名为Apache OpenOffice,2012年10月19日Apache宣布Apache OpenOffice成为Apache基金会的顶级项目。同时Apache OpenOffice也发布了最新的版本。OpenOffice继续沿用之前的网站。