
MHT 文件用于将图像、文本、CSS 和其他相关资源保存在单个网页中。在某些用例中,您可能希望将 HTML 文件转换为 MHT 格式。因此,本文介绍了如何在 Java 中以编程方式将 HTML 转换为 MHT 格式。
HTML 到 MHT 文件转换器 – Java API 安装
Aspose.HTML for Java API 可用于处理 HTML、MHTML、XPS 和其他受支持的文件格式。您可以从 Downloads 页面下载 JAR 文件,也可以在应用程序的 pom.xml 文件中使用以下配置:
存储库:
<repositories>
<repository>
<id>snapshots</id>
<name>repo</name>
<url>http://repository.aspose.com/repo/</url>
</repository>
</repositories>
依赖:
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-html</artifactId>
<version>21.12</version>
<classifier>jdk16</classifier>
</dependency>
</dependencies>
在 Java 中将 HTML 转换为 MHT 或 MHTML
您需要按照以下步骤将 HTML 页面转换为 MHT 或 MHTML 文件:
- 创建 MHTMLSaveOptions 类的对象。
- 使用 ConvertHTML 方法保存输出 MHT 或 MHTML 文件。
下面的代码示例解释了如何在 Java 中以编程方式将 HTML 文件转换为 MHT 或 MHTML 文件:
// 从文件初始化 HTML 文档
HTMLDocument document = new HTMLDocument("input.html");
// 初始化 MHTMLSaveOptions 对象
MHTMLSaveOptions options = new MHTMLSaveOptions();
// 将 HTML 转换为 MHTML
Converter.convertHTML(document, options, "output.mht");
使用 Java 中的高级选项将 HTML 转换为 MHT
您可以通过使用 MHTMLSaveOptions 类公开的属性来增强将 HTML 文件转换为 MHT 格式的过程。请按照以下步骤使用高级选项将 HTML 转换为 MHT 文件:
- 初始化 MHTMLSaveOptions 类的实例。
- 指定输出 MHT 文件的属性。
- 使用 ConvertHTML 方法将 HTML 文件保存为 MHT。
下面的代码示例演示了如何在 Java 中以编程方式将 HTML 文件转换为 MHT 格式:
// 准备一个带有指向另一个文件的链接的 HTML 代码,并将其作为“document.html”保存到文件中
String code = "<span>Hello World!!</span>\n" +
"<a href='document2.html'>click</a>\n";
try (FileWriter fileWriter = new FileWriter("document.html")) {
fileWriter.write(code);
}
// 准备 HTML 代码并将其作为“document2.html”保存到文件中
code = "<span>Hello World!!</span>";
try (FileWriter fileWriter = new FileWriter("document2.html")) {
fileWriter.write(code);
}
// 将资源链接深度的值更改为 1,以便转换具有直接链接资源的文档。
MHTMLSaveOptions options = new MHTMLSaveOptions();
options.getResourceHandlingOptions().setMaxHandlingDepth(1);
// 将 HTML 转换为 MHT
Converter.convertHTML(
"document.html",
options,
"output.mht"
);
}
}
探索 Aspose.HTML for Java API
您可以访问 API 文档 以了解 API 支持的许多其他功能。
获得免费许可证
您可以通过申请 免费临时许可证 来评估 API 的全部功能。
结论
在本文中,您学习了如何在 Java 中以编程方式将 HTML 文件转换为 MHT 或 MHTML 文件。此外,它还涵盖了自定义转换过程的高级功能。如有任何疑问,请随时通过 论坛 与我们联系。