使用 Java 版 API 转换 XPS
本文以 XPS 到 JPEG 的转换为例,讲解如何使用 C# 转换 XPS 文件。
Aspose.Page 允许您使用 Java 将 XPS 文件转换为高质量的 BMP、JPG、TIFF、PNG 和 PDF 文档。
您可以免费在线试用 Aspose.Page XPS 转 JPG 并查看转换结果 XPS 转 JPG 转换器 或 XPS 查看器
Aspose.Page Java XPS 转 JPG 转换器允许在任何支持 Java 虚拟机的操作系统上将 XPS 文档转换为 JPG 图像。
执行以下步骤以运行 XPS 转 JPG 转换:
为输入的 XPS 文档初始化输入流。
根据先前创建的输入流创建 XpsDocument 的实例。
指定 JpegSaveOptions(或 PdfSaveOptions(如果转换为 PDF 格式) 列出的其他保存选项)的 SmoothingMode、Resolution 和其他 选项。
创建 ImageDevice(或 PdfDevice(如果转换为 PDF 格式)的实例。
使用 JPEG 保存选项将 XPS 文档保存为图像,并保存为一个字节数组。每个字节数组对应一页输入文档。
将生成的二维字节数组保存为 JPG 文件,并为每个字节数组创建一个新的文件输出流。
从 XPS 文件创建 XpsDocument 实例。
指定 JpegSaveOptions(或 [PdfSaveOptions]( https://reference.aspose.com/page/java/com.aspose.xps.rendering/pdfsaveoptions/)如果转换为 PDF 或 列出的其他保存选项)的 SmoothingMode、Resolution 和其他选项。
使用保存选项将 XPS 文档另存为图像,并保存为字节数组数组。输入文档的一页对应一个字节数组。
将生成的二维字节数组保存为 JPEG 文件,并为每个字节数组创建一个新的文件输出流。
我们来看一下 JpegSaveOptions。使用此类,我们可以在将 XPS 转换为 JPG 时指定不同的转换参数。
- ImageSize 指定生成的图像的宽度和高度。
- SmoothingMode 指定线条、曲线和填充区域边缘的平滑度,可以是 AntiAlias、HighQuality、HighSpeed 和 Default(无)。默认值为 HighQuality。
- Resolution 控制生成的图像的分辨率。默认值为 96。
- TextRenderingHint 指定文本渲染的质量,可以是 AntiAlias、AntiAliasGridFit、ClearTypeGridFit、SingleBitPerPixel、SingleBitPerPixelGridFit 或 SystemDefault。XPS 转 JPG 格式的默认值为 AntiAliasGridFit。
- InterpolationMode 定义缩放或/和旋转图像时使用的算法,可以是 Bicubic、Bilinear、High、HighQualityBicubic、HighQualityBilinear、Low、NearestNeighbor 和 Default。默认值为 HighQualityBicubic。
- PageNumbers 表示将保存为 JPG 格式的页数数组。
将 XPS 转换为 PDF 时,需要以下参数:
- 如果 ImageCompression 算法为 JPEG,JpegQualityLevel 控制 PDF 文档中图像的质量,取值范围为 0 到 100。
- ImageCompression 算法封装在 PdfImageCompression 枚举中,可以是游程编码 (RLE)、Flate、带有基本或优化预测器的 Lempel-Ziv-Welch (LZW)、JPEG、none(原始图像字节)和 auto(针对每幅图像采用最合适的压缩方式)。默认为自动压缩。
- TextCompression 算法封装在 PdfTextCompression 枚举中,可以是运行长度编码 (RLE)、Flate、Lempel-Ziv-Welch (LZW) 或 None。XPS 转 PDF 的默认值为 Flate。
- EncryptionDetails 封装在 PdfEncryptionDetails 中。它允许设置 PDF 文档的加密算法、权限、所有者和用户密码。
- PageNumbers 表示将保存为 PDF 的页数数组。
- OutlineTreeExpansionLevel 和 OutlineTreeHeight 控制文档大纲的视图。
在我们的XPS 跨平台转换器中在线评估 XPS。您可以一次将多个 XPS 文件转换为 JPG,并在几秒钟内下载结果。
您可以从 GitHub 下载示例和数据文件。