OpenOffice.org是一套開放源碼的辦公軟體套裝。對多種作業系統,包括Microsoft Windows、Unix類(如:Solaris、Linux、Mac OS X等)等均供有相應的運行版本。它與Microsoft Office文檔高度兼容及競爭,也可以XML格式存儲檔案。
OpenOffice.org的前身是1998年一家德國公司StarDivision所研發出的稱為StarOffice的一個辦公室軟體,在1999年8月被昇陽微系統(Sun Microsystems)公司購得。2000年7月,套件的源碼通過兩種授權協定,GNU寬通用公共許可證(LGPL)與昇陽工業標準源許可證(Sun Industry Standards Source License, SISSL),公開釋放,目的是通過提供低價、優質、開放的選項,打破Microsoft Office的市場壟斷。
這個計畫及軟體通常稱為“OpenOffice”,但因為商標的爭議,不得不採用其他名稱,正規的叫法是“OpenOffice.org”。
概覽
根據其使命陳述,OpenOffice.org計畫致力於“創造一個以社群為基礎、領先的國際性的辦公套件,可以運行在所有主要平台,並藉基於API與XML檔案格式的開放組件,提供對所有功能及數據的接入性。”
這項計畫的另一目的是跟Microsoft Office競爭,並在所有恰當的地方模仿其樣觀及手感。它也可以讀寫Microsoft Office及其他程式的絕大多數檔案格式。對許多用戶來說,讀寫Microsoft Office文檔是一項至關緊要的功能。
組件
OpenOffice.org集合了密切協同工作的不同程式,來提供一個現代辦公套件需要的功能。其中很多在設計上仿照Microsoft Office,組件主要包括:
- Writer-一個看起來以及用起來都很像Microsoft Word的字處理器,以提供與其大致相同的功能與工具。它也可以不需額外軟體就書寫PDF檔案,也可作為HTML編輯器創建網頁。
- Calc-一個跟Microsoft Excel基本等同的電子表格。Calc也提供Excel中沒有的一些功能,Calc也同樣可以將電子表格寫成PDF檔案。
- Impress-一個跟Microsoft PowerPoint近似的演示稿程式。除了準備演示稿的通常功能,也可以將演示稿轉變成Macromedia Flash(SWF)檔案。不過,Impress的確依賴於第三方的演示模板,並且運行較慢,動畫也不太流暢。
- Draw-一個跟CorelDRAW功能類似的繪圖程式。它有靈活的connectors連結各種形狀,以便製作流程圖。
- Base-一個跟Microsoft Access類似的資料庫程式。Base允許創建並運算元據庫,並建造方便用戶讀取數據的表單及報告。和Access一樣,Base也是一種能夠和許多種不同的資料庫系統連結的接口程式,例如Access資料庫(JET), 支援ODBC的-資料庫來源以及MySQL/Postgresql。Base並沒有包含在1.x版的OpenOffice.org中,它一直到2.0版之後才包含進來.
- 宏錄製器 — 可用來記錄使用者的操作並且可重複撥放以自動化地完成一些重複性的工作。這個工具從最早期就是套件中的一員,它是從StarOffice的BASIC衍生出來的。
- Math — 一個能夠產生及編輯複雜數學公式的工具,除了可以利用它的圖形接口作輸入以外,亦支援TeX的數式輸入。它所產生的公式可以插入其他的OpenOffice.org檔案,例如Writer所產生的檔案,並可以支援與微軟Equation Editor的轉換。它支援多種字型而且可以匯出成為一個PDF檔案。
- 快速啟動 — 一個會在電腦開機時執行的小程式。該程式會將OpenOffice.org執行所需要的核心檔案和公式庫載入記憶體中,以便讓其他組件能更快速的被啟動。OpenOffice.org 1.0版最為人詬病的一個缺點就是程式啟動花費時間過長,而這個小程式就是希望能改善這個問題。2.0版將會在這個部分作更多實質的改善。
歷史
OpenOffice.org的前身是1998年一家德國公司StarDivision所研發出來的一個辦公室軟體,稱之為StarOffice。在1999年8月,已經相當成熟的StarOffice 5.2被昇陽微系統(Sun Microsystems)公司購買。2000年7月19日,套件的源碼通過兩種授權協定,GNU寬通用公共許可證(LGPL)與昇陽工業標準源許可證(Sun Industry Standards Source License, SISSL),公開釋放,目的是通過提供低價、優質、開放的選項,打破Microsoft Office的市場壟斷。新計畫的名字叫做OpenOffice.org,其網站並在2000年10月13日(星期五)開始運作。
2003年年初,開始2.0版的研發工作,目標有:與Microsoft Office更好的相互操作;更好的運行,包括提高速度、降低記憶體使用;更好的命令稿語言處理能力;更好的整合性,尤其是跟GNOME; 更易查找和使用的資料庫前端,全新的SQL資料庫;以及易用性的提高。一個測試版在2005年3月4日發布,2.0的最終版本在2005年10月20日推出,並設有多個語言的版本(包括繁體和簡體中文版)。
另外,OpenOffice.org 2.0 Beta 2 之後的版本,已正式改為單一使用 LGPL 授權,從此修改的源碼必須根據 LGPL 的條文予以公開。
發布紀錄
發布日期及版本編號以英文版為準。
版本 | 發布日期 | 附註 |
Build 638c | 2001年10月 | 首次里程碑的釋放 |
1.0 | 2002年5月1日 | |
1.1 | 2003年9月2日 | |
1.1.3 | 2004年10月4日 | |
1.1.4 | 2004年12月22日 | |
1.1.5 | 2005年9月14日 | 1.x版本的最後版本 |
1.9+ | 2005年3月4日 | 2.0Beta版本 |
版本 | 重要改進 | 發布日期 | 附註 |
2.0 | ·提供新功能和高階 XML 處理能力 | 2005年10月20日 | 里程碑 |
2.0.1 | ·隱藏某些程式的設定,使得網路管理更方便 ·新的快捷鍵利用記錄的游標位置 ·改善項目符號和編號的功能 ·新的郵件合併功能 | 2005年12月21日 | 重點在於修正 2.0 版的錯誤(尤其是本地化) |
2.0.2 | ·改善中文粗斜字型顯示的支援 | 2006年3月8日 | |
2.0.3 | ·改善與 Microsoft Office 的兼容 ·改善 PDF 處理功能 ·更多的語言以及辭典 | 2006年6月29日 | 修補三個安全漏洞 |
2.0.4 | ·改善 PDF 處理功能 ·直接輸出至 LaTex 檔案格式 ·更強大的延伸套件管理系統 | 2006年10月13日 | |
2.1.0 | ·為 Impress 增加了多重顯示器支持 ·改善 Calc 的 HTML 輸出 ·改善 Base 的 Access 支持 ·版本更新自動提示功能 | 2006年12月12日 | |
2.2.0 | ·改善 PDF 處理功能 ·Base 改善了 SQL 的編輯功能 ·Calc 改善對 Excel 的檔案兼容性 ·針對 Windows Vista作了修飾配合 | 2007年3月28日 | 修補了兩個安全漏洞 |
2.3.0 | 2007年4月20日(2.3.0 Dev SRC680_m209) ~?月?日完成開發 |
StarOffice
昇陽公司資助OpenOffice.org的開發,是為了將其作為商業的StarOffice套用軟體的基礎。StarOffice從6.0開始,就基於OpenOffice.org的源碼,另加了一些專屬組件,包括:
安全性
在電腦安全網站Secunia,可發現目前OpenOffice.org的所有版本,無安全漏洞未修正。
開發
概覽
OpenOffice.org的API基於被稱為通用網路對象 (Universal Network Objects,縮寫為UNO)的組件技術。其包括各種類似於CORBA接口描述語言 (interface description language)的接口定義。
OpenOffice.org使用的文檔檔案格式 (document file format)基於XML,以及幾個輸出、導入過濾器。OpenOffice.org讀取的所有外部格式,都通過內部的XML表示法進行來迴轉換。將XML保存到磁碟時,由於使用了壓縮,檔案體積一般要比同等的Microsoft Office文檔要小。從1.0版起,存儲文檔的本地的檔案格式開始基於OASIS OpenDocument的檔案格式標準,2.0版時,已經成為默認的檔案格式。
在OpenOffice.org網站的開發員專區,該套件的開發版每數周就有新版釋出。這些版本主要用於測試新功能,或者滿足特殊用戶的好奇心,可以提前看到未來的變化,但這不適合產品套用。
該項目現在主要仍由StarOffice的員工來維護,作為非Sun公司的貢獻者,包括該項目的其他合夥贊助者,要進入源碼庫的核心,仍然比較困難。
本地桌面整合
通過使用自己的部件工具箱以及字型表示的庫,當前的OpenOffice.org穩定版可以在許多不同的平台上,提供相同的用戶界面。但這樣做也有缺陷。目前的OpenOffice.org穩定版並沒有針對本地應用程式的完整界面外觀 (look and feel)。如何將2.0版更好地結合於各自不同的平台,相關工作正在進展中。
Mac OS X
Mac OS X是Unix版的移植。OpenOffice.org版本2原計畫使用Aqua界面,但由於一系列的問題 (包括技術挑戰、許可證兼容性、開發資源有限),該項目還在研發中。作為臨時替代,OpenOffice.org在OS X上有兩種版本:
- OpenOffice.org Mac OS X (X11),此版本需要安裝X11.app或XDarwin。由於由層層測試的Unix版移植而來,該版本具有Unix版的各種功能,但與OS X服務的結合不佳,比如字型、列印,其界面是X11應用程式。
- NeoOffice,此版本通過Java平台與OS相結合。NeoOffice易於安裝,跟OS X GUI標準 (比如,使用本地的下拉選單)有機結合,可存取OS X的字型、列印子系統。但此項目由一個很小的團隊維護,而且依賴於OSX X11版的完成,所以該版本發布也遲於官方OpenOffice.org的釋出。
其他項目
有關OpenOffice.org主線的其他項目,貢獻起來門檻就低一些。包括文檔、國際化與本地化,以及API。
還有一個腳本項目,用於收集、分類以及發布有用的宏。
OpenGroupware.org 是一個程式擴展集,可用於分享OpenOffice.org文檔、日曆、地址簿、電子郵件、即時通訊,以及白板,並可對其他群件應用程式進行存取。
在OOExtras上,還可以新建並共享各類文檔模版等。
通過CPAN,還可獲取一些Perl擴展,比如OpenOffice::OODoc,外部程式可通過其處理OpenOffice.org文檔。這些庫沒有使用OpenOffice.org的API,通過Perl的標準壓縮/解壓縮、XML存取、UTF-8編碼模組,直接對OpenOffice檔案進行讀寫。
可攜式OpenOffice.org
另外,John Haller 先生現時已為 OpenOffice.org 開發出 可攜式OpenOffice 版本,可以塞在一條USB 快閃記憶體盤里,從而方便經常要出外的人可以隨時隨地使用 OpenOffice.org 軟體。
中文社群作出的改良
螢火飛 非官方 Linux 修改版
台灣桌面自由軟體開發人員螢火飛分別為 OpenOffice.org 1.1.5、2.0、2.0.4推出 Linux 中文加強版,解決了包括中文粗斜體字型顯示、中文字型名稱再現、最適化接口文字大小等多項改良,另外修正了開啟 DBF 檔亂碼問題,可以正確無誤地開啟 DBF 資料檔。
OpenOffice.org 公文系統
這是由台灣中山科學研究院配合 OpenOffice.org 所開發的一套公文系統,功能非常強大,內建了大量日常公務文書往來的樣式 (template),而且還加入新的工具列及圖形接口精靈,讓用者可以有系統地存取、分類及編寫不同的公務檔案,為台灣政府的公文電子化計畫所推廣。
RedOffice
RedOffice是由北京紅旗中文貳仟軟體技術有限公司根據Sun公司的Sun Industry Standards Source License協定對OpenOffice進行修改的商業化版本。2006年3月推出的RedOffice 3.0,並提供免費的個人版下載,分windows和Linux兩個平台。RedOffice針對大陸的用戶習慣做了很多細節改進,增加了檔案關聯等輔助程式。
市場占有率
雖然微軟現時仍然能保有大眾市場的95%占有率,但在企業市場,OpenOffice.org及StarOffice已成功保有14%的市場占有率。OpenOffice.org網站報告已有5千多萬的下載次數。
2005年10月4日,昇陽公司與Google宣布成為戰略合作夥伴。作為協定的一部分,昇陽公司會在OpenOffice.org中增加一個Google搜尋條,昇陽公司與Google會共同參與市場活動,以及共同研發,而Google會協助發放OpenOffice.org。
在法國,OpenOffice.org已經吸引了地方以及國家的政府管理者,他們希望將軟體採購合理化的同時,可以穩定地用標準檔案格式進行資料處理。目前,OpenOffice.org已經成為法國憲兵司令部的官方辦公軟體。
Java整合的爭論
OpenOffice.org第一版中使用了Java語言來編寫很多輔助功能,但OpenOffice.org第二版中已儘可能使用主要程式來完成這些功能。以下的現有版本的OpenOffice.org里建基於Java運行環境的範疇。
- 部份Base的套用 - Base為OpenOffice.org里的資料庫程式
- 多媒體播放器
- 電子郵件整合 (需要Java Mail)
- Writer里的全部文檔精靈
- 輔助工具
- 報告自動引示
- JDBC驅動支持
- XSLT 過濾
- BeanShell這個NetBeans 的命令稿語言以及Java UNO bridge
- 輸出至Palm OS上的Aportis.doc (.pdb)檔案格式及Pocket PC上的Pocket Word (.psw)檔案格式的過濾器。
但是使用Java作為輔助工具在開源社區引極大的爭論,因為Java本身是閉源的,這與OpenOffice.org的開源精神相違背。但事實是因為昇陽公司作為OpenOffice.org計畫的主導者和Java的開發者,其加入Java於OpenOffice.org里也是無可厚非的。
就這個問題,GNU計畫的創始人理察·馬修·斯托曼在2005年5月提出要對OpenOffice.org作出修改,使用開放源碼的GCJ及GNU Classpath取代Java。詳情可參看 自由軟體基金會上的宣告及OpenOffice.org網站上的簡介。
紅帽公司主導的Fedora Core 4(2005年6月13日發行)支持這個行動,紅帽公司在這個版本的Fedora Core Linux內加入了OpenOffice.org第二版的測試版,並整合了GCJ及GNU Classpath。這個舉動證明了Java在 OpenOffice.org這個開源計畫里並不是必須的,而OpenOffice.org的開發者亦在開發者守則里加入了未來的OpenOffice.org的版本應要兼容開放源碼的Java版本的指引。