OpenOffice

OpenOffice

OpenOffice.org是一套跨平台的辦公室軟體套件,能在Windows、Linux、MacOSX(X11)和Solaris等操作系統上執行。它與各個主要的辦公室軟體套件兼容。OpenOffice.org是自由軟體,任何人都可以免費下載、使用及推廣它。

主要模塊


文本文檔
電子表格
演示文稿
繪圖
資料庫
公式
最新中文正式版:Apache_OpenOffice_incubating_4.1.6_Win_x64_install_zh-CN。

最新版本


OpenOffice.org3.2.0(2010-2-17)
(Windows,Linux,SolarisIntel/Sparc)
OpenOffice.org3.3.0(2011-1-27)
(Windows,Linux,SolarisIntel/Sparc)
ApacheOpenOffice™3.4(2012-5-8)
ApacheOpenOffice3.4.1(2012-8-23)
ApacheOpenOffice4.0.0(2013-07-23)

軟體發展


成立背景

StarDivision是StarOffice的創始公司,八十年代中期在德國創立。昇陽在1999年收購StarDivision之後,於2000年6月推出StarOffice5.2,並將大部分StarOffice的源代碼及相關開發技術移交給自由軟體社區OpenOffice。StarOffice6.0和以後的版本都會以OpenOffice為基礎。

發展歷史

OpenOffice
OpenOffice
OpenOffice.org來自上世紀八十年代中期在德國創立的一家軟體公司StarDivision,它生產一種叫做StarOffice的辦公軟體,市場主要集中在歐洲。因為價格低廉、穩定、跨平台、功能充足等優點獲得了用戶的好評。SunMicrosystems意識到市場上需要這樣一種替代專有軟體的產品,並且認為公司的願景與策略和StarOffice的技術背景都與這樣的市場需求和趨勢相吻合。於是Sun在1999年8月收購了StarDivision公司,並於翌年7月資助建立了OpenOffice.org社區。同年10月,公布了StarOffice絕大部分源代碼(大約800萬行),由此成為世界三大開源社區之一(另外兩個是Mozilla和Apache);12月,發布了OpenOffice.orgXML文件格式規範。2001年7月,OpenOffice.org開發工具包發布。2002年5月,OpenOffice.org1.0正式發布。2003年3月,OpenOffice.org2003首屆年會在德國漢堡召開。2003年10月,OpenOffice.org1.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%的MicrosoftOffice卻一直是價格昂貴的專有軟體,其中的大部分功能個人用戶很少用到。所以對消費者來說,它逐漸地已經成為一種奢侈品,然而現在的大部分用戶因為專有文件格式被鎖定在其上,不得不繼續使用其升級產品。廣大用戶希望能夠出現一種替代昂貴專有辦公軟體的廉價、穩定、具有足夠功能並且可用的辦公軟體。

軟體設計


程序設計

OpenOfficeorg的API以UNO(UniversalNetworkObject)寫成,所以本身是電腦語言中立的。現在來說,OpenOfficeorg主要是以C++撰寫的,但也能以Java(TM)來撰寫。
OpenOfficeorg正在尋找義工協助撰寫C的Binding,希望在不久的將來也能以C來撰寫OpenOfficeorg。另外,除了無電腦語言的限制外,完成了的外掛模塊也可以直接在不同的操作系統平台上使用。
昇陽所公報的“FoundationsofOfficeProductivityinaNetworkedAge”道出了OpenOfficeorg的技術進程計劃及OpenOfficeorg源碼規劃概論。不過因為OpenOfficeorg是開放源碼軟體,所以OpenOfficeorg的社區需要負起完成OpenOfficeorg任務宣言的責任。

授權聲明

在源碼方面,OpenOfficeorg用的是雙重授權法:GNU次通用公共授權(LGPL)與SunIndustryStandardsSourceLicense(SISSL)。而對於發佈於網上但不會包含在軟體內的文件,OpenOfficeorg則用PublicDocumentLicense(PDL)。欲知詳情,請到openoffice org的授權聲明網頁中看看。

組織架構

OpenOfficeorg是主計劃名稱。在OpenOffice旗下還有二十個以上的計劃。這些計劃可以分為三大類:
計劃類型說明
公認的計劃包括了大部分技術性與一些非技術性的計劃。這類計劃的領袖擁有投票權。
國際化計劃這類計劃主要是為以非英語為第一語言的人士而設的。好像這個中文計劃,就為大家提供了中文的說明與教學文件,以及我們所共同關心的信息。
試驗計劃這類計劃是仍在試驗階段的計劃。這些計劃都是由OpenOffice社區協助的。一般來說,成功的計劃都會在半年以後由試驗計劃轉為公認的計劃。

軟體特點


Officeorg不僅是五大組件的組合,而且與同類產品不同的是,本套件不是獨立軟體模塊形式創建的,從一開始,它就被設計成一個完整的辦公軟體包。
*所有的包有類似的外觀,易於使用,如“樣式”等“一次學會到處使用”的工具。OpenOfficeorg保持與您的電腦類似的外觀——您一旦改變您的桌面,OpenOffice org也會相應改變。
*組件間的相同工具用法相同——例如,Writer裡面使用的繪圖工具在Impress和Draw裡面您也能用到。
*您不必知道哪個應用程序用於創建哪個特殊文件——您使用“文件”就可以“打開”任何openOfficeorg文件,正確的應用程序將會運行。
*所有的包共享一個拼寫檢查工具,如果您改變一個組件包裡面的“選項”,在其他組件包里也會同時改變。
*所有組件間資料可以輕鬆轉移。
*所有的組件文件可儲存為OpenDocument格式(新的辦公文檔國際標準),這種基於XML的格式相比同類產品的格式,磁碟存儲更合理,任何兼容OpenDocument標準的軟體均可以訪問您的數據。(註:Google的網上辦公軟體使用OpenDocument格式。)
*使用安裝程序,所有組件可以一次性安裝。
*所有發布的版本都基於相同的開放許可證——沒有隱性費用
與Sun和StarOffice的關係
從歷史上看,OpenOfficeorg來源與StarOffice,它在OpenOfficeorg成立前的最後一版是5.2。在Sun把StarOffice的絕大多數源碼開放之後,StarOffice也是基於OpenOfficeorg來開發的。也就是說OpenOfficeorg是Sun資助的,但是不屬於Sun,StarOffice才是Sun所有的產品。而Sun所提供給OpenOfficeorg社區的源代碼一經發布,就無法收回。Sun從此無法關閉OpenOfficeorg,因為它是屬於公有領域的。由於StarOfficeTM這個商標已經被註冊了,Sun就在東亞地區為StarOffice註冊了StarSuiteTM這個商標,StarOffice和StarSuite實際上是同一產品的西方和東方語言版本。
因為StarOffice的源碼里含有少量的第三方代碼,而這些代碼是Sun付費才獲得許可在StarOffice中使用的,所以OpenOfficeorg並不包括這部分源碼。這些不可公開的代碼實現以下功能:
某些字體,特別是亞洲語言字體(例如方正宋體、方正黑體等);
資料庫模塊(StarOffice中包含了SoftwareAG公司的資料庫AdabasD);
一些文檔模板;
增強的剪貼畫圖庫;
一些亞洲語言的增強功能;
某些文件過濾器。
事實上,現在文檔模板和剪貼畫在OpenOfficeorg社區里已經可以找到比較豐富的資源,桌面資料庫現在也已經有了比較成熟穩定的開源產品,亞洲語言的增強功能和某些特定文件過濾器也並不是至關重要的功能,但是缺乏豐富的字體,可以說是OpenOfficeorg和StarOffice相比的一個最大的缺點。這也跟現在沒有質量很好的開放源碼字體有直接的聯繫,優秀中文字體的許可證是相當昂貴的,而OpenOfficeorg這樣的非盈利組織無法負擔地起這樣高昂的費用。
License問題
OpenOfficeorg採用GNU通用公共許可證(GPL)和Sun工業標準源碼許可證(SunIndustryStandardsSourceLicense,SISSL)8的“雙許可證”方式對源碼進行許可;採用獨立的公共文檔許可證9(PublicDocumentationLicense,PDL)對發布在OpenOfficeorg網站上、但不期望集成進軟體的絕大多數文檔進行許可。
“雙許可證”方式意味著要麼應用GNUGPL許可證,要麼應用SISSL許可證。當應用GPL許可證的時候,OpenOfficeorg源碼中的庫和組件功能將根據GNULGPL進行許可。由於LGPL與GPL完全兼容,這樣就能夠鼓勵更多的人參與到OpenOfficeorg社區建設中來。
SISSL則是為商業應用設計的。由於GPL許可證對於自由複製、修改、發布等權利的嚴格保證,某些軟體商會因此而受限、不能參與到開放源碼社區中來。OpenOfficeorg的雙許可證方式解決了這個問題,他們可以選擇根據SISSL進行許可。SISSL是經過開放源碼促進會(OpenSourceInitiative,OSI)確認的開放源碼許可證10,它規定在被許可者承諾保證“標準”一致的條件下,可以分發軟體但不公開修改過的源代碼。這裡的“標準”是指OpenOfficeorg的XML文件格式規範11,和OpenOfficeorg的應用程序介面規範12。

軟體應用


開源社區

OpenOfficeorg本身優良的性能促進了它的應用。現在世界範圍內幾乎所有的Linux發行版都附帶了OpenOfficeorg或其衍生軟體。OpenOfficeorg的使用者還建立了一些組織和網站來推廣OpenOfficeorg的應用,比如OpenOfficeorg文檔項目13、OpenOfficeorg論壇14、關於附件和模板的OpenOfficeorgExtras15、關於宏的OpenOfficeorgMacros16、OpenOfficeorg幫助在線17、TamingOpenOfficeorg18。GetOpenOfficeorg19、ByteBotnet20、ClueSheets21、Itrainonline22和DigitalDistribution23等網站也已經開始提供OpenOfficeorg的在線培訓服務。
網上書店上關於OpenOfficeorg的使用類書籍已經有幾十本,並且還在不斷增加。關於OpenOfficeorg的技術類書籍也已經出版了一些,例如關於XML文件格式要義的《OpenOfficeorgXMLEssentials》24和《OpenOfficeorgMacroExplained》25。
亞洲地區的一些國家和地區也在積極推廣OpenOfficeorg的應用。日本建立了OpenOfficeorg文檔翻譯項目26和用戶組織27;韓國也建有OpenOfficeorg用戶組織28;中國台灣地區的OpenOfficeorg應用也非常活躍,台南縣教育網建立了“OpenOfficeorg補給站”29,台灣高性能網路計算中心也建立了OpenOfficeorg討論組30,有些個人愛好者31建立了個人維護的OpenOfficeorg論壇,甚至還長期提供提高中文版面效果的獨立補丁(該補丁已加入OpenOfficeorg源代碼的CVS伺服器)和安裝包。

衍生軟體

自從OpenOfficeorg1.0公布以來,有些地區,特別是亞洲地區,根據OpenOfficeorg的雙許可證方式發布並包裝了具有本地特色的辦公軟體。比如PladaoOffice32就是為了提高泰文的本地化,依據LGPL/SISSL和JCA協議8而定製的OpenOfficeorg;BharateeyaOO33是印度信息通信技術研究培訓中心為了提高OpenOfficeorg對印度各種方言和民族語言的支持而資助的加強本地化的項目。非洲地區也開始了為本地民族語言基於OpenOfficeorg進行本地化的公益項目。
國內一些軟體企業根據SISSL在OpenOfficeorg的基礎上進行中文化、定製化和擴展功能的開發。比如中文倆仟的RedOffice、金山的KingStorm颶風Office、中標軟體的中標普華Office、共創開源的共創Office、即時軟體的即時全能辦公室、KaiSource公司的KaiOffice等。
中國有55個少數民族,除了回族和滿族已基本不使用自己的民族語言和文字以外,其他53個民族仍在使用的民族語言有72種。其中29個民族有與自己的民族語言相一致的文字,由於有的民族有一種以上的文字,所以這29個少數民族共有54種民族文字34。少數民族語言文字在少數民族社會生活種起著十分重要的、其他民族的語言文字無法替代的作用,所以為這些語言文字提供信息化手段是提高全國整體信息化水平的重要組成部分,是延續多民族的傳統文化的重要手段。
為了實現支持民族語言的跨平台信息處理系統,國家863計劃設立了重大軟體專項課題“民族語言版本Linux操作系統和辦公套件研發”35。該專項中的辦公套件就是在OpenOfficeorg的基礎上針對藏文、蒙文、維文等主要民族語言提升本地化的水平,以期達到實用性的效果,具有很高的政治意義和社會意義。該項目已經取得階段性成果36。

用戶市場

早期OpenOfficeorg的用戶主要分佈在歐洲地區,這和OpenOfficeorg起源於德國、所以西方語言支持比較好有很大關係。歐洲的很多政府機構、公司、學校、非盈利機構甚至個人都在廣泛使用OpenOfficeorg。JupiterResearch在2003年的一項研究報告中認為OpenOfficeorg在小型商業機構的市場份額已經達到6%,另有3%在2004年有應用計劃。
團體用戶在削減IT預算的時期,更加註重於從降低總持有成本的角度來考量。德國慕尼黑政府經過一年的評估,最近決定將市政當局的14000台PC從MicrosoftWindows/Office遷移到Linux和OpenOfficeorg,這一降低政府開支的舉措引起了各國政府的廣泛關注,具有強烈的示範效應。
隨著OpenOfficeorg的不斷推廣,其他地區的用戶也開始注意和嘗試OpenOfficeorg。北美和拉美地區的一些企業、學校、和政府機構也在評估將OpenOfficeorg作為日常辦公套件的可行性,並已經開始了試用。37
OpenOfficeorg所具有的優秀特性使它獲得了廣泛讚譽。38例如LinuxFormat2001年讀者選擇獎“最佳商業軟體”;XMLJournal2002年讀者選擇最終獎“最具創意的XML應用”;LinuxJournal2002年編輯選擇獎“最佳辦公軟體”,2003年讀者選擇獎“最受歡迎的辦公軟體”;OpenforBusiness2003年開放選擇獎“最佳辦公軟體”;O'RELLY下屬的OSDircom2003年編輯選擇獎“桌面開源軟體最佳應用”,等等。

社區信息


項目

OpenOfficeorg社區內的資源是以項目的形式組織起來的,分為四大類:理事會、成熟類41、孵化類42、本地語言類43、網站資源。理事會類包含了與社區管理運作相關的信息,網站資源類包括OpenOfficeorg下載、技術支持、開發資源的信息。
成熟類項目是指那些包含核心技術、或者關鍵用戶信息的項目,現在共有22個。比如應用架構、組件技術、應用程序介面、XML文件格式、編譯工具和環境、安裝工具、資料庫訪問、圖形系統層、用戶界面、文字處理、電子表格、圖形應用、語言模塊、本地化、移植、文檔、質量保證、市場推廣等等。成熟類項目通常是社區開發者關注的焦點。
孵化類項目用來給社區成員提供測試想法的空間。這些想法可能是編程性的,也可能不是。只要能表明想法對社區明顯的支持,任何社區成員都有權利創建一個孵化類項目。現有的孵化類項目共11個,包括:參考文獻、商務拓展、軟體發布、群件、KDE集成、項目管理、腳本、技術規範、社區統計、用戶FAQ等。
本地語言類項目用來以用戶的本地語言提供更多信息和資源,相關的工作包括翻譯OpenOfficeorg社區內的資料,介紹本地語言版本內所特有的資源和信息等。現在已經包含的本地語言包括:漢語、阿拉伯語、印地語、日語、韓語、寮國語、泰米爾語、泰語、越南語等37種語言。其中的漢語項目--“OpenOfficeorg中文計劃44”是由台灣地區的幾名志願者維護的,支持繁體和簡體中文兩個版本。

理事會

OpenOfficeorg社區由社區理事會39進行管理,理事會章程40也是由社區成員起草,經過全體社區成員討論和修改,幾乎以全票通過。理事會是由社區成員志願組成的非自治組織,建立理事會的目的是在戰略規劃與資源分配、協調與資助者和公眾的關係、在整個社區內提供仲裁這些方面提供指導。理事會可以調節衝突並為社區成員提供論壇,它也可以對項目的目標發表意見。理事會除此之外的權利在章程中被嚴格限制。
理事會由九名成員組成,這些成員都是各個項目的代表,他們也基本上都是項目中活躍的貢獻者,在若干方面頗有建樹,獲得了其他貢獻者的尊敬。這九名理事會成員包括:
五名成熟類項目代表,其中有一名作為項目領導的Sun僱員,一名作為項目領導的非Sun的程序員,一名非程序性項目的管理者,其他兩名項目領導或社區管理者;
兩名本地語言類項目代表,從成熟的本地語言類項目領導中選出;
一名社區貢獻者代表,來自於孵化類項目領導和傑出成員;
一名Sun公司代表。
理事會每月至少召開一次會議,如有必要也可臨時召開。會議以網際網路中繼聊天(InternetRelayChat,IRC)的形式召開,會後通過電子郵件確認會議記錄。任何社區成員都有權查看會議記錄,並向理事會提案。

參與貢獻

OpenOfficeorg社區歡迎公眾對OpenOfficeorg的關注與支持,為此建立了必要的設施使得開放源碼技術能夠被所有感興趣的參與者獲得。參與者可以很方便地下載軟體、獲取技術支持、以及開發資源。
實際上無論角色如何,每個人都可以對OpenOfficeorg項目提供幫助。參與越多則越能獲得他人的信任和支持,項目的長期有價值的貢獻者會獲得直接向代碼庫提交代碼的權利。OpenOfficeorg網站上註冊的用戶都是OpenOfficeorg的“成員”,社區鼓勵成員參加到項目中並訂閱該項目的電子郵件列表。參加到項目中的成員首先的身份是“觀察員”,如果對項目的貢獻頻繁並確有價值,就能夠獲得“開發者”的身份,擁有對代碼庫的寫許可權,只對項目文檔有寫許可權的成員稱之為“內容開發者”。開發者在提交不止於微小改動的代碼前必須要簽訂《共同版權委託協議》8。項目開發者定期選舉項目領導,項目領導負責指導該項目的方向,確保相關問題都被解答,並負責創建友好並相互支持的社區環境。
現在已經有很多個人和團體對OpenOfficeorg社區作出貢獻。Debian、SuSE、RedHat對軟體打包,GNOME、KDE、Ximian對桌面集成與用戶界面修飾方面都有貢獻。Ximian甚至還建立了專門的OpenOfficeorg網頁45提供非官方的資源。雖然國內OpenOfficeorg及其衍生軟體的應用已經非常廣泛,可惜的是,迄今為止只有寥寥幾人簽訂了《共同版權委託協議》承諾為OpenOfficeorg社區貢獻代碼。
其實開發者可以參與OpenOfficeorg社區的方面很多,編寫腳本與宏、擴展與集成組件、編譯除錯並提高源碼、向新平台移植、本地化與國際化、撰寫使用與開發文檔、測試與質量保證等等。都是不錯的開發型入手點。另外,技術支持和市場推廣也是不錯的非開發型參與方式。
OpenOfficeorg社區由CollabNet提供主機並負責日常管理,代碼庫採用CVS維護,以IssueZilla管理“問題”。社區成員的主要交流方式包括電子郵件與郵件列表、IRC、網路日誌(Blog)、時事通訊(NewsLetter)等。社區成員也會經常為媒體撰寫文章並接受訪問。由於OpenOfficeorg社區成員來自於世界各地,所操母語千差萬別,為了溝通方便起見廣泛採用英語作為通行語言。

其他社區

全世界眾多開源社區能夠進行交流的基礎是他們都認同開放源碼軟體的基本理念。OpenOfficeorg社區作為三大開源社區之一,在獲得開源軟體領域廣泛關注的同時,也獲得了普遍的支持,與其他開源社區建立了密切的協作關係。比如:
Mozilla社區為了實現OpenOfficeorg在Mozilla瀏覽器中的插件而密切合作;
Apache社區為OpenOfficeorg提供了優秀的XML/XSLT46軟體,並且在POI47項目中與OpenOfficeorg合作將MSExcel文件格式文檔化48,它的Cocoon49項目及其子項目Forrest50在伺服器端能夠把OpenOfficeorg無縫集成進內容管理系統;
OpenGroupware51社區與OpenOfficeorg群件項目52協作以提供郵件、日誌、即時消息和白板等功能,其客戶端軟體Glow正在開發中;
CPAN53社區中的OpenOffice::OODoc54項目支持Perl對OpenOfficeorg文檔的訪問;
Zope55/Plone56社區用Python實現了內容管理系統/架構,OpenFlow57以此為基礎實現了工作流管理系統,它們現在都是非常流行的開源軟體。Zope中所包括的CMFOODocument58和ZooDocument59支持對OpenOfficeorg文檔的訪問,由此OpenOfficeorg可以作為內容著作工具而集成進該內容管理系統。基於Zope/Plone的軟體商icoya60就提供了包含OpenOfficeorg的內容管理解決方案。國內也有一些Zope/Plone的相關社區,例如:Python中文社區61、Zope/Plone中文社區62、中文Zope用戶組63,中蟒(中文Python)64等等。
OpenOfficeorg及其它相關開源社區相互協調、共同發展,就可以為個人消費者和團體用戶提供更優秀的軟體以及整體解決方案。比如在辦公自動化、電子出版、工作流、內容管理等領域,OpenOfficeorg及其解決方案就有廣闊的應用前景。
OpenOffice對於中文的支持:軟體提供中日韓文字支持,但對於中文輸入法的支持存在缺點,在Word中輸入中文標點可能在保存后再次打開時,有時將標點附近詞句誤識別為超鏈接,希望此信息對中文用戶有幫助,同時希望OpenOffice改進的更完美。

更名信息


2012年6月,Oracle宣布將OpenOffice贈送給Apache基金會,Apache基金會通過投票接納了OpenOffice,2012年10月份OpenOffice改名為ApacheOpenOffice,2012年10月19日Apache宣布ApacheOpenOffice成為Apache基金會的頂級項目。同時ApacheOpenOffice也發布了最新的版本。OpenOffice繼續沿用之前的網站。