主要模組
文本文檔
電子表格
演示文稿
繪圖
資料庫
公式
最新中文正式版: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用的是雙重授權法:GNU 次通用公共授權 (LGPL) 與 Sun Industry Standards Source License (SISSL)。而對於發布於網上但不會包含在軟體內的檔案,<CITE class=highlight style="BACKGROUND: none transparent scroll repeat 0% 0%" highlight="true">OpenOffice org</CITE> 則用 Public Document License (PDL)。欲知詳情,請到openofficeorg的授權聲明網頁中看看。
組織架構
OpenOffice org是主計畫名稱。在OpenOffice旗下還有二十個以上的計畫。這些計畫可以分為三大類:
計畫類型 說明
公認的計畫 包括了大部分技術性與一些非技術性的計畫。這類計畫的領袖擁有投票權。
國際化計畫 這類計畫主要是為以非英語為第一語言的人士而設的。好像這箇中文計畫,就為大家提供了中文的說明與教學檔案,以及我們所共同關心的信息。
試驗計畫 這類計畫是仍在試驗階段的計畫。這些計畫都是由 OpenOffice社區協助的。一般來說,成功的計畫都會在半年以後由試驗計畫轉為公認的計畫。
軟體特點
Office org 不僅是五大組件的組合,而且與同類產品不同的是,本套件不是獨立軟體模組形式創建的,從一開始,它就被設計成一個完整的辦公軟體包。
* 所有的包有類似的外觀,易於使用,如“樣式”等“一次學會到處使用”的工具。OpenOffice org保持與您的電腦類似的外觀——您一旦改變您的桌面,OpenOfficeorg也會相應改變。
* 組件間的相同工具用法相同——例如, 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繼續沿用之前的網站。