使用 Aspose.Page Node.js 通过 C++ API 转换 XPS
本文以 XPS 转 PDF 为例,讲解如何使用 Node.js 转换 XPS 文件。
Aspose.Page 允许您使用 Node.js 将 XPS 文件转换为高质量的 BMP、JPG、TIFF、PNG 和 PDF 文档。
您可以检查 Aspose.Page XPS 转 PDF 的质量,以及通过免费在线 XPS 转 PDF 转换器 查看结果
Aspose.Page Node.js 通过 C++ XPS 转 PDF 转换器可在 Windows 和 Linux 系统上将 XPS 文档转换为 PDF。
将 XPS 转换为 PDF 需要执行以下几个步骤:
- 创建文件读取器“const file_reader = new FileReader();”并读取文件“file_reader.readAsArrayBuffer(e.target.files[0]);”。
- 在加载事件处理程序中调用 AsposeXPSSaveAsPdf,并将文件内容、文件名称以及 SuppressError 布尔值传递给它。
- 结果 JSON 包含 fileNameResult 中的文件名。
- 如果 SuppressErrors 值为 true(默认情况下),则可以查看 XPS 转换为 PDF 过程中抛出的错误。
- 您可以使用 DownloadFile 函数下载文件:“DownloadFile(JSON.fileNameResult, “image/pdf”);”
以下代码片段展示了如何在 Node.js 中将 XPS 转换为 PDF 文档:
更多示例和数据文件,请访问 github.com/aspose-page/Aspose.Page-for-Node.js-C
我们来看一下 PdfSaveOptions。使用这个类,我们可以在将 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 转换为图像格式时,需要使用以下参数:
- SmoothingMode 指定线条、曲线和填充区域边缘的平滑度,可以是 AntiAlias、HighQuality、HighSpeed 和 Default(无)。默认值为 HighQuality。
- Resolution 控制生成图像的分辨率。默认值为 96。
- TextRenderingHint 指定文本渲染质量,可以是 AntiAlias、AntiAliasGridFit、ClearTypeGridFit、SingleBitPerPixel、SingleBitPerPixelGridFit 和 SystemDefault。XPS 转换为 PNG 时,默认值为 AntiAliasGridFit。
- InterpolationMode 定义缩放和/或旋转图像时使用的算法,可以是 Bicubic、Bilinear、High、HighQualityBicubic、HighQualityBilinear、Low、NearestNeighbor 和 Default。默认值为 HighQualityBicubic。
- PageNumbers 表示将保存为 PNG 的页数数组。
使用我们的XPS 跨平台转换器在线检查 XPS 转换效果。您可以一次性将多个 XPS 文件转换为 PDF,并在几秒钟内下载结果。
您可以从 GitHub 下载示例和数据文件。