2009-05-22 60 views
5

對於文檔交換,我想生成OpenOffice.org文本和電子表格文檔。到目前爲止,我發現使用OLE安裝需要安裝OpenOffice的導出組件。Delphi(非OLE)是否有OpenOffice.org導出組件?

是否已有Delphi組件可用,它們可以爲OpenOffice.org Writer或OpenOffice.org Calc編寫本機文件?

回答

3

這取決於你的文件有多複雜,你想投入多少努力。

OpenOffice.org文檔(從OO.org的第2版開始)是OpenDocument Format中的文件,基本上是帶有文檔結構的壓縮目錄,其中包含各種XML和支持文件。您可以使用例如7-Zip的「Open Inside」命令來導航文件,如目錄。

這使你至少有以下選項:

  • 代碼寫入到輸出文件自己,德爾福流類和壓縮的支持應該是足夠的。這顯然是最困難的方式,但是你可以控制一切。

  • 將最小的文檔保存爲模板文件,並將它們作爲外部支持文件或作爲嵌入式資源添加到您的應用程序中。當需要編寫文件時,請複製模板並在根目錄中編輯content.xml文件。這應該會更容易一些,我可能會創建一個簡單的電子表格文件,其中包含多個表格和數據列。

  • 如果您已獲得許可證或不介意支付費用,FastReport VCL支持「用於Office應用程序(OASIS)導出,電子表格(ods)和文本(odt)的開放文檔格式」。也許還有其他報告解決方案,但FastReport是我確信的。

1

FPC/Lazarus的fpspreadsheet組件可以直接編寫舊的Excel格式,OOO可以打開它們。如果您需要電子表格而不是文本文檔,則可以選擇是否可以將其移植到Delphi。

1

在拉撒路我使用zexmlss組件輸出到ODS。這個組件用於lazarus,delphi和builder。僅適用於電子表格。公式工作正常。

相關問題