2009-08-15 11 views
1

私は、Microsoft Word(.doc)ファイルの内容を、C#、.NET 2.0、およびMicrosoft.Officeを使用してきれいにフォーマットされたXHTMLに変換しようとしています。 Interop.Word名前空間。これは私が構築しているちょっとしたexeです。自動化されたビルドプロセスにうまく組み込むことができます。私がこれをやっている理由は、Wordの「Webページとして保存」で構築されたものがHTML生成の恐ろしい仕事だからです。私はMicrosoft Word 2003を使用しています。.NET Microsoft.Office.Interopを使用して.DOCをXHTMLに変換する

この点に関しては、MSDNの参考文献(http://msdn.microsoft.com/en-us/library/microsoft.office.interop.word%28office.11%29.aspx)を超えて、ワードドキュメントを作成する方法についてのいくつかのチュートリアルを見てきました。別のフォーマットの)私は空白になるよ。

これまでのところ、開いているWord文書のすべての段落をループし、HTML段落タグにテキストを折り返してHTMLファイルに出力する小さなアプリケーションがあります。 Wordでは、すべてが段落として扱われるように見えるので、現在の段落がリスト、表、ヘッダーなどであるかどうかを判断する方法はないことがわかります。表、リストなどは別々のコレクションですしかし、Microsoft.Office.Interop.Word名前空間が提供するオブジェクトモデルの内容から秩序を引き出す方法(私が見つけた)はないようです。

まず、私が達成しようとしていることを行うためにMicrosoft.Office.Interop.Word名前空間を使用するための優れたリソースを知っている人は誰ですか?

2番目に、私はここでホイールを再発明しようとしています。なぜ私が「ウェブページとして保存」機能を使用していないのかについて前の説明を前にしています)、またはアプローチ/技術の選択の点で間違ったツリーを吠える/コードライブラリ?

MS Office 2007以降では、Office Open XML形式(http://en.wikipedia.org/wiki/Office_Open_XML)のサポートがますます向上していることがわかっています。そのため、適切なXML変換が可能であると仮定します。

また、明らかに私が記述しているタイプのものにはいくつかの優れた製品がありますが、オープンソースの選択肢はまったくありません。

+0

デスクトップアプリケーション、またはサービスまたはWebサービスでこれを実行していますか?後者の2つのケースで使用する際に大きな問題があります。 –

+0

これは、.NETフレームワーク2.0とMS Word 2003がインストールされたマシン上で実行される小さな実行可能ファイルです。 –

答えて

-1

私はInteropが嫌いです。それはなので、Interopはクレージーのように感じます。

Word 2007、[名前を付けて保存] - > [その他の形式]で文書を開き、XML形式の1つを選択し、結果XMLをSystem.XMLで処理できますか? 1つのXML文書から別のXML文書への変換は、Interopを使用するよりもはるかに簡単です。

+0

申し訳ありませんが、私はWord 2003で作業していると言わざるを得ません。私はinteropのものをソートしていると思います。オブジェクトモデルを自分のニーズにどのように曲げることができるかを判断する場合に過ぎません。 –

関連する問題