ドキュメントをHTML、MHTML、またはEPUBに変換します
HTMLおよびMHTMLフローレイアウト形式の文書も非常に一般的であり、任意のwebプラットフォームで使用できます。 そのため、文書をHTMLとMHTMLに変換することはAspose.Wordsの重要な機能です。
EPUB(“Electronic Publication"の略)は、電子書籍の配布に一般的に使用されるHTMLベースのフォーマットです。 この形式は、ほとんどの読書デバイスと互換性のある電子書籍をエクスポートするためにAspose.Wordsで完全にサポートされています。
文書を変換する
HTML、MHTML、またはEPUBへの単純な変換には、Saveメソッドオーバーロードのいずれかが使用されます。 ドキュメントをファイルまたはストリームに保存し、出力ドキュメントの保存形式を明示的に設定したり、ファイル名拡張子から定義したりできます。
次の例は、保存形式を指定してDOCXをHTMLに変換する方法を示しています:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
// Load the document from disk. | |
Document doc = new Document(dataDir + "Test File (docx).docx"); | |
// Save the document into HTML. | |
doc.save(dataDir + "Document_out.html", SaveFormat.HTML); |
文書をMHTMLまたはEPUBに変換するには、それぞれSaveFormat.MHTML
またはSaveFormat.EPUB
を使用します。
往復情報を含む文書を変換する
HTML形式は多くのMicrosoft Word機能をサポートしておらず、可能な限り元のものに近いドキュメントモデルを復元する必要がある場合は、HTMLファイル内に追加情報を保存する必要があります。 このような情報は、“往復情報"とも呼ばれます。 この目的のために、Aspose.Wordsは、ExportRoundtripInformationプロパティを使用してHTML、MHTML、またはEPUBに保存するときにラウンドトリップ情報をエクスポートする機能を提供します。 往復情報を保存すると、リストされた書式の文書をDocumentオブジェクトにロードする際に、タブ、コメント、ヘッダー、フッターなどの文書のプロパティを復元で
デフォルト値はHTMLの場合はtrue、MHTMLとEPUBの場合はfalseです:
- trueの場合、ラウンドトリップ情報は、対応するHTML要素の-aw-*CSSプロパティとしてエクスポートされます
- falseの場合、生成されたファイルに出力されるラウンドトリップ情報はありません
次のコード例は、ドキュメントをDOCXからHTMLに変換するときに往復情報をエクスポートする方法を示しています:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
// Load the document. | |
Document doc = new Document(dataDir + "Test File (doc).doc"); | |
HtmlSaveOptions options = new HtmlSaveOptions(); | |
// HtmlSaveOptions.ExportRoundtripInformation property specifies | |
// whether to write the roundtrip information when saving to HTML, MHTML or | |
// EPUB. | |
// Default value is true for HTML and false for MHTML and EPUB. | |
options.setExportRoundtripInformation(true); | |
doc.save(dataDir + "ExportRoundtripInformation_out.html", options); |
HTMLに変換するときに保存オプションを指定します
Aspose.Words既定またはカスタム保存オプションを使用してWord文書をHTMLに変換できます。 以下では、カスタム保存オプションの例をいくつか説明します。
リソースを保存するためのフォルダを指定します
Aspose.Wordsを使用すると、文書がHTMLに変換されたときに画像、フォント、外部CSSなどのすべてのリソースが保存される物理フォルダを指定できます。 デフォルトでは、これは空の文字列です。
ResourceFolderプロパティを指定することは、すべてのリソースを書き込むフォルダを設定する最も簡単な方法です。 フォントを指定したフォルダに保存するFontsFolderや画像を指定したフォルダに保存するImagesFolderなど、個々のプロパティを使用できます。 相対パスが指定されている場合、FontsFolderとImagesFolderはコードアセンブリが配置されているフォルダーを参照し、ResourceFolderとCssStyleSheetFileNameはHTMLドキュメントが配置されている出力フォル
この例では、ResourceFolderは相対パスを指定します。 このパスは、HTMLドキュメントが保存されている出力フォルダーを参照します。 ResourceFolderAliasプロパティの値は、すべてのリソースに対してURLsを作成するために使用されます。
次のコード例は、これらのプロパティを操作する方法を示しています:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
// The path to the document which is to be processed. | |
Document doc = new Document(dataDir + "Document.doc"); | |
HtmlSaveOptions saveOptions = new HtmlSaveOptions(); | |
saveOptions.setCssStyleSheetType(CssStyleSheetType.EXTERNAL); | |
saveOptions.setExportFontResources(true); | |
saveOptions.setResourceFolder(dataDir + "\\Resources"); | |
doc.save(dataDir + "ExportResourcesUsingHtmlSaveOptions_out.html", saveOptions); |
ResourceFolderAliasプロパティを使用して、HTML文書に書き込まれたすべてのリソースのURIsを構築するために使用されるフォルダの名前を指定することもできます。 これは、すべてのリソースファイルに対してURIsを生成する方法を指定する最も簡単な方法です。 ImagesFolderAliasプロパティとFontsFolderAliasプロパティを使用して、画像とフォントに同じ情報を個別に指定することができます。
ただし、CSSには個々のプロパティはありません。 の動作FontsFolder, FontsFolderAlias, ImagesFolder, ImagesFolderAlias およびCssStyleSheetFileNameプロパティは変更されません。 CssStyleSheetFileNameプロパティは、フォルダ名とファイル名の両方を指定するために使用されることに注意してください。
- ResourceFolderは、FontsFolder、ImagesFolder、CssStyleSheetFileNameで指定されたフォルダよりも優先度が低くなります。 ResourceFolderで指定したフォルダが存在しない場合は、自動的に作成されます。
- ResourceFolderAliasの優先度はFontsFolderAliasやImagesFolderAliasよりも低くなります。 ResourceFolderAliasが空の場合、ResourceFolderプロパティの値はリソースURIsを作成するために使用されます。 ResourceFolderAliasが”."(ドット)に設定されている場合、リソースURIsにはパスを指定せずにファイル名のみが含まれます。
Base64エンコーディングフォントリソースのエクスポート
Aspose.Wordsは、Base64エンコーディングのHTMLにフォントリソースを埋め込むかどうかを指定する機能を提供します。 これを実行するには、ExportFontsAsBase64プロパティを使用します–これはExportFontResourcesプロパティの拡張です。 デフォルトでは、その値はfalseであり、フォントは別々のファイルに書き込まれます。 ただし、このオプションをtrueに設定すると、フォントはBase64エンコーディングでドキュメントのCSSに埋め込まれます。 ExportFontsAsBase64プロパティはHTML形式にのみ影響し、EPUBとMHTMLには影響しません。
Base64でエンコードされたフォントをHTMLにエクスポートする方法を次のコード例に示します:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
// The path to the document which is to be processed. | |
Document doc = new Document(dataDir + "Document.doc"); | |
HtmlSaveOptions saveOptions = new HtmlSaveOptions(); | |
saveOptions.setExportFontResources(true); | |
saveOptions.setExportFontsAsBase64(true); | |
doc.save(dataDir + "ExportFontsAsBase64_out.html", saveOptions); |
EPUBに変換するときに保存オプションを指定します
Aspose.Words既定またはカスタム保存オプションを使用してWord文書をEPUB形式に変換できます。 HtmlSaveOptionsのインスタンスをSaveメソッドに渡すことで、いくつかのオプションを指定できます。
次のコード例は、いくつかのカスタム保存オプションを指定してWord文書をEPUBに変換する方法を示しています:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
// Open an existing document from disk. | |
Document doc = new Document(dataDir + "Document.EpubConversion.doc"); | |
// Create a new instance of HtmlSaveOptions. This object allows us to set | |
// options that control | |
// how the output document is saved. | |
HtmlSaveOptions saveOptions = new HtmlSaveOptions(); | |
// Specify the desired encoding. | |
saveOptions.setEncoding(Charset.forName("UTF-8")); | |
// Specify at what elements to split the internal HTML at. This creates a new | |
// HTML within the EPUB | |
// which allows you to limit the size of each HTML part. This is useful for | |
// readers which cannot read | |
// HTML files greater than a certain size e.g 300kb. | |
saveOptions.setDocumentSplitCriteria(DocumentSplitCriteria.HEADING_PARAGRAPH); | |
// Specify that we want to export document properties. | |
saveOptions.setExportDocumentProperties(true); | |
// Specify that we want to save in EPUB format. | |
saveOptions.setSaveFormat(SaveFormat.EPUB); | |
// Export the document as an EPUB file. | |
doc.save(dataDir + "Document.EpubConversion_out.epub", saveOptions); |