2009-05-22 19 views
5

文書交換のために、OpenOffice.orgのテキストと表計算ドキュメントを生成したいと思います。これまで私はOLEを使ってOpenOfficeをインストールする必要がある輸出コンポーネントを見つけました。Delphi(非OLE)用のOpenOffice.orgエクスポートコンポーネントはありますか?

OpenOffice.org WriterまたはOpenOffice.org Calcのネイティブファイルを書き込むことができるDelphiコンポーネントは既に用意されていますか?

答えて

3

文書がどれほど複雑で、どれだけの投資をしたいかによって異なります。

OpenOffice.orgのドキュメント(OO.orgのバージョン2から始まる)は、文書化された構造を持つ基本的に圧縮されたディレクトリで、さまざまなXMLファイルとサポートファイルを含むOpenDocument Formatのファイルです。例えば、「Open Inside」コマンド7-Zipを使用して、ディレクトリのようなファイルをナビゲートすることができます。少なくとも、次のオプションがあなたを与える

  • は、文書自身の出力にコードを書き、デルファイのストリームクラスと圧縮サポートが十分でなければなりません。これは明らかに最も困難な方法ですが、あなたはあなたのコントロール下にあるすべてを持っています。

  • 最小限のドキュメントをテンプレートファイルとして保存し、外部サポートファイルとして、または埋め込みリソースとしてアプリケーションに追加します。ファイルを書き込む必要がある場合は、テンプレートをコピーして、ルートディレクトリのファイルを編集します()。これははるかに簡単です。例えば、いくつかのシートとデータの列を含む単純なスプレッドシートファイルを作成するためには、おそらく簡単な方法です。

  • FastReport VCLは、既にライセンスを所有しているか、または支払いに気をつけていない場合は、「Officeアプリケーション(OASIS)のエクスポート、スプレッドシート(​​ods)およびテキスト(odt)のドキュメント形式を開く」をサポートしています。たぶん、他のレポートソリューションもあるかもしれませんが、FastReportは私が確信しているソリューションです。

1

FPC/Lazarusのfpspreadsheetコンポーネントは、古いExcel形式を直接書き込むことができ、OOOはそれらを開くことができます。テキストドキュメントではなくスプレッドシートが必要な場合は、それをDelphiに移植できるかどうかを確認するオプションになります。

1

Lazarusでは、ODSへのエクスポート用にzexmlssコンポーネントを使用しています。 lazarus、delphi、builderのコンポーネントです。スプレッドシートのみ。数式は正常に動作します。

関連する問題