XPS 文件用于以页面描述语言保存文档。您可能需要将 XPS 文件转换为图像以预览内容或创建缩略图。针对此类场景,本文介绍了如何使用 Java 将 XPS 转换为 JPG 或 PNG 图像。
XPS 到 JPG 或 PNG 图像转换器 – Java API 安装
XPS 文件可以转换为不同的图像格式。只需通过下载 JAR 文件或使用以下 Maven 配置来配置 Aspose.Page for Java API,即可从 Aspose Repository 下载 API:
存储库:
<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-page</artifactId>
<version>21.12</version>
</dependency>
</dependencies>
在 Java 中将 XPS 转换为 JPG 图像
您可以通过以下步骤在 Java 中将 XPS 转换为 JPG 图像:
- 使用 XpsDocument 类加载输入 XPS 文件。
- 使用必要的参数初始化 JpegSaveOptions 对象。
- 为图像创建渲染设备。
- 写入输出 JPG 文件。
以下代码片段显示了如何在 Java 中以编程方式将 XPS 文件转换为 JPG 图像:
// 从流中加载 XPS 文档
XpsDocument document = new XpsDocument("sample.xps");
// 使用必要的参数初始化选项对象。
JpegSaveOptions options = new JpegSaveOptions();
options.setSmoothingMode(SmoothingMode.HighQuality);
options.setResolution(300);
options.setPageNumbers(new int[] { 1 , 3 });
// 为图像创建渲染设备
ImageDevice device = new ImageDevice();
document.save(device, options);
// 遍历文档分区(固定文档,在 XPS 术语中)
for (int i = 0; i < device.getResult().length; i++) {
// 遍历分区页面
for (int j = 0; j < device.getResult()[i].length; j++) {
// 初始化图像输出流
FileOutputStream imageStream = new FileOutputStream("XPStoJPEG" + "_" + (i + 1) + "_" + (j + 1) + ".jpeg");
// 写入图像
imageStream.write(device.getResult()[i][j], 0, device.getResult()[i][j].length);
}
}
在 Java 中将 XPS 转换为 PNG 图像
您可以通过以下步骤在 Java 中将 XPS 转换为 PNG 图像:
- 使用 XpsDocument 类加载源 XPS 文档。
- 实例化 PngSaveOptions 实例以设置不同的属性。
- 使用 ImageDevice 类初始化渲染设备。
- 编写输出的 PNG 图像。
下面的代码片段演示了如何在 Java 中以编程方式将 XPS 文件转换为 PNG 图像:
// 从流中加载 XPS 文档
XpsDocument document = new XpsDocument("sample.xps");
// 使用必要的参数初始化选项对象。
PngSaveOptions options = new PngSaveOptions();
options.setSmoothingMode(SmoothingMode.HighQuality);
options.setResolution(300);
options.setPageNumbers(new int[] { 1 , 3 });
// 为图像创建渲染设备
ImageDevice device = new ImageDevice();
document.save(device, options);
// 遍历文档分区(固定文档,在 XPS 术语中)
for (int i = 0; i < device.getResult().length; i++) {
// 遍历分区页面
for (int j = 0; j < device.getResult()[i].length; j++) {
// 初始化图像输出流
FileOutputStream imageStream = new FileOutputStream("XPStoPNG" + "_" + (i + 1) + "_" + (j + 1) + ".png");
// 写入图像
imageStream.write(device.getResult()[i][j], 0, device.getResult()[i][j].length);
}
}
获得免费评估许可证
您可以通过申请 免费临时许可证 来评估 API 的全部功能。
结论
在本文中,您学习了如何使用 Java 以编程方式将 XPS 文件转换为 JPG 或 PNG 图像。此外,您可以通过访问 文档 探索 API 提供的许多其他功能。请随时通过 论坛 与我们联系。