HTML形式は、ほとんどすべてのコンピューター環境でサポートされているため、人気があります。 WORDからHTMLまたはMHTMLへの変換は、C++を使用してWebアプリケーションでそのようなファイルを表示する必要がある場合などのシナリオで役立ちます。 Aspose.Words for C++ APIは、その機能と効率のために最良の選択です。 Microsoft Wordファイル(DOC / DOCX)をHTMLまたはMHTML形式に変換する機能を使用して、C++アプリケーションを充実させることができます。以下は、Word変換について詳しく説明するこの記事の概要です。

C++ Microsoft Word Files Converter API –インストール

Microsoft Word(DOCX / DOC)ファイルを変換するには、Aspose.Words for C++APIをインストールする必要があります。 NuGetギャラリーからAPIを簡単にインストールするか、コンソールで次のコマンドを使用してAPIをインストールできます。

Install-Package Aspose.Words.Cpp -Version 20.8.0

C++を使用してWord(DOCX / DOC)をHTMLに変換する

WordからHTMLへの変換は、コンテンツをブラウザに表示するためにレンダリングする場合に役立ちます。 C++アプリケーションは、次の手順で変換をすばやく実行できます。

  1. ソースワードファイルをロードする
  2. ドキュメントをHTML形式で保存します

以下のコードは、C++を使用してWordをHTMLに変換する方法を示しています。

// からドキュメントをロードします
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"Test File.docx");

// Word文書をHTML形式で保存します
doc->Save(u"Document_out.html", SaveFormat::Html);

C++を使用してWordを埋め込みフォントでHTMLに変換する

ワードファイル(DOCX / DOC)には、一部のプラットフォームでサポートされていない可能性のあるカスタムフォントが含まれている場合があります。このような場合、出力結果でフォントが文字化けして表示されることがあります。ただし、Aspose.Words for C++ APIを使用すると、Base64エンコーディングを使用してフォントリソースをHTMLに埋め込むことができます。出力HTMLファイルにフォントを埋め込むExportFontsAsBase64プロパティを設定できます。これらの要件を達成するには、以下の手順に従う必要があります。

  1. ソースDOCXファイルをロードします
  2. ExportFontsAsBase64プロパティを設定します
  3. 出力HTMLファイルを保存します

次のコードスニペットは、C++を使用してWordを埋め込みフォントでHTMLに変換する方法を示しています。

// ソースDOCXファイルをロードします
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"Document.docx");

// HtmlSaveOptionsオブジェクトを初期化します
System::SharedPtr<HtmlSaveOptions> saveOptions = System::MakeObject<HtmlSaveOptions>();
saveOptions->set_ExportFontResources(true);
saveOptions->set_ExportFontsAsBase64(true);
        
// 出力HTMLを保存します
System::String outputPath = u"ExportFontsAsBase64.html";
doc->Save(outputPath, saveOptions);

さらに、メモ帳でHTMLファイルを編集したり、ブラウザでソースコードを表示したりすると、ファイルに埋め込まれているBase64フォントに気付くことができます。次のスクリーンショットは、出力HTMLファイルの例を示しています。

WordをHTMLに変換する

C++のラウンドトリップ情報を使用してWordをHTMLに変換する

Microsoft Word文書には、HTMLファイル形式ではサポートされていない多くの情報や機能が含まれている可能性があります。場合によっては、WordをHTMLに変換してから、Word形式に戻す必要があります。これらの変換間の最大の忠実度を確保するために、「ラウンドトリップ情報」と呼ばれるいくつかの情報をAspose.Words for C++APIによって追加で保存できます。このような変換をテストするには、次の手順に従います。

  1. ソースDOCXファイルをロードします
  2. ExportRoundtripInformationをtrueに設定します
  3. 出力HTMLファイルを保存します

以下のコードスニペットは、C++を使用してラウンドトリップ情報を使用してWordをHTMLに変換する方法を示しています。

// 入力DOCXファイルをロードします
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"Document.doc");

// HtmlSaveOptionsを設定します
System::SharedPtr<HtmlSaveOptions> saveOptions = System::MakeObject<HtmlSaveOptions>();
saveOptions->set_ExportFontResources(true);
saveOptions->set_ExportFontsAsBase64(true);

// 出力HTMLファイルを保存します        
System::String outputPath = u"ExportFontsAsBase64.html";
doc->Save(outputPath, saveOptions);

C++でWordをMHTMLに変換する

MHTMLファイル形式は、単一の出力ファイル内にすべてのコンテンツが含まれているため、一般的です。次の手順で、C++を使用してWordファイル(DOCX / DOC)をMHTML形式に変換できます。

  1. ソースDOCXファイルをロードします
  2. 出力をMHTML形式で保存します

以下のコードスニペットは、C++を使用してWordをMHTMLに変換する方法を示しています。

// ドキュメントをAspose.Wordsにロードします。
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"Test File.docx");

// 出力をMHTML形式で保存します。
doc->Save(u"Document_out.mhtml", SaveFormat::Mhtml);

結論

Word(DOCX / DOC)をさまざまなオプションを使用してHTMLまたはMHTMLに変換する方法を学びました。ラウンドトリップ情報の保存やBase64リソースとしてのフォントの埋め込みなどのいくつかの機能についても詳しく説明します。ただし、ご不明な点がございましたら、無料サポートフォーラムまでお気軽にお問い合わせください。

関連項目