0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

.NETとC#でWord文書をHTML形式に変換する方法

Last updated at Posted at 2025-01-17

Word文書をHTML形式に変換することには多くの利点があります。特に、複数のデバイスやプラットフォームで一貫して柔軟に表示できることや、Web経由での配信やさまざまなWebアプリケーションへの統合が容易になる点が挙げられます。企業や開発者がより柔軟で互換性の高いファイル処理方法を求める中、.NETフレームワークのC#はその強力な相互運用性によって、この変換を実現する理想的な選択肢となっています。本記事では、.NET環境でC#を使用してWord文書をHTMLファイルに変換する方法を紹介します。

  • C#を使ってWord文書を一般的なHTML形式に変換する方法
  • C#を使ってWord文書を単一のHTMLファイルに変換する方法
  • 変換時にカスタマイズオプションを設定する方法

本記事では、無料のFree Spire.Doc for .NETを使用します。NuGetからインストールするには、以下のコマンドを実行してください:
PM> Install-Package FreeSpire.Doc

C#でWord文書を一般的なHTML形式に変換する方法

Document.LoadFromFileメソッドでWord文書を読み込み、SaveToFile(string:fileName, FileFormat.HTML)メソッドでHTML形式に変換して保存できます。この方法で変換すると、HTMLファイル、CSSファイル、画像フォルダー(文書に画像が含まれている場合)が生成されます。以下に手順を示します。

  1. 必要なモジュールをインポート。
  2. Documentインスタンスを作成。
  3. Document.LoadFromFile()メソッドでWord文書を読み込み。
  4. Document.SaveToFile(string:fileName, FileFormat.HTML)メソッドでHTML形式に変換して保存。

コード例

using Spire.Doc;

namespace WordToHTML
{
    class Program
    {
        static void Main(string[] args)
        {
            // Documentインスタンスを作成
            using (Document doc = new Document())
            {
                // Word文書を読み込む
                doc.LoadFromFile("Sample.docx");

                // HTMLに変換して保存
                doc.SaveToFile("output/WordToHTML.html", FileFormat.Html);
            }
        }
    }
}

結果
2025-01-17_174401.png

C#でWord文書を単一のHTMLファイルに変換する方法

Document.HtmlExportOptions.CssStyleSheetTypeDocument.HtmlExportOptions.ImageEmbeddedプロパティを設定することで、CSSと画像を単一のHTMLファイルに埋め込むことができます。以下に手順を示します。

  1. 必要なモジュールをインポート。
  2. Documentインスタンスを作成。
  3. Document.LoadFromFile()メソッドでWord文書を読み込み。
  4. Document.HtmlExportOptions.CssStyleSheetTypeCssStyleSheetType.Internalに設定して、CSSスタイルをHTML内に埋め込み。
  5. Document.HtmlExportOptions.ImageEmbeddedtrueに設定して、画像をHTML内に埋め込み。
  6. Document.SaveToFile(string:fileName, FileFormat.HTML)メソッドでHTML形式に変換して保存。

コード例

using Spire.Doc;

namespace WordToHTML
{
    class Program
    {
        static void Main(string[] args)
        {
            // Documentインスタンスを作成
            using (Document doc = new Document())
            {
                // Word文書を読み込む
                doc.LoadFromFile("Sample.docx");

                // CSSを埋め込む設定
                doc.HtmlExportOptions.CssStyleSheetType = CssStyleSheetType.Internal;

                // 画像を埋め込む設定
                doc.HtmlExportOptions.ImageEmbedded = true;

                // HTMLに変換して保存
                doc.SaveToFile("output/WordToHTMLEmbedded.html", FileFormat.Html);
            }
        }
    }
}

結果
2025-01-17_174624.png

変換時のカスタマイズオプション

Document.HtmlExportOptionsプロパティを使用して、さらに細かい変換オプションを設定できます。以下は、サポートされているオプションの情報です。

プロパティ 説明
CssStyleSheetType HTML CSSスタイルシートのタイプ(外部または内部)を指定。
CssStyleSheetFileName HTML CSSスタイルシートファイル名を指定。
ImageEmbedded 画像をHTMLコード内にデータURI形式で埋め込むかどうかを指定。
ImagesPath HTML内で使用する画像の保存先フォルダーパスを指定。
UseSaveFileRelativePath 画像のファイルパスがHTMLファイルのパスに対して相対パスであるかどうかを指定。
HasHeadersFooters HTMLにヘッダーとフッターを含めるかどうかを指定。
IsTextInputFormFieldAsText テキスト入力フォームフィールドをHTML内にテキストとしてエクスポートするかどうかを指定。
IsExportDocumentStyles ドキュメントスタイルをHTMLの<head>セクションにエクスポートするかどうかを指定。

以下は操作手順の例です。

  1. 必要なモジュールをインポート。
  2. Documentインスタンスを作成。
  3. Document.LoadFromFile()メソッドでWord文書を読み込み。
  4. Document.HtmlExportOptionsのプロパティで変換オプションをカスタマイズ。
  5. Document.SaveToFile(string:fileName, FileFormat.HTML)メソッドでHTML形式に変換して保存。

コード例

using Spire.Doc;

namespace WordToHTML
{
    class Program
    {
        static void Main(string[] args)
        {
            // Documentインスタンスを作成
            using (Document doc = new Document())
            {
                // Word文書を読み込む
                doc.LoadFromFile("Sample.docx");

                // CSSファイル名を設定
                doc.HtmlExportOptions.CssStyleSheetType = CssStyleSheetType.External;
                doc.HtmlExportOptions.CssStyleSheetFileName = "CustomCSSFileName.css";

                // 画像を埋め込まず、画像フォルダーを設定
                doc.HtmlExportOptions.ImageEmbedded = false;
                doc.HtmlExportOptions.UseSaveFileRelativePath = true;
                doc.HtmlExportOptions.ImagesPath = "Images/";

                // 文書スタイルをhead部分にエクスポート
                doc.HtmlExportOptions.IsExportDocumentStyles = true;

                // HTMLに変換して保存
                doc.SaveToFile("output/WordToHTMLEmbedded.html", FileFormat.Html);
            }
        }
    }
}

結果
2025-01-17_175438.png


本文中で使用したWord文書のサンプル:

2025-01-17_174115.png

この記事では、.NET環境でC#を使用してWord文書をHTML形式に変換し、変換オプションを設定する方法を紹介しました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?