XPS 文件基于代表页面布局的 XML 纸张规范。它们包括有关外观和打印布局的信息。有时您可能希望合并多个 XPS 文件以进一步处理数据。根据这样的要求,本文解释了如何在 C# 中以编程方式合并 XPS 文件。
合并或合并 XPS 文件 – C# API 安装
Aspose.Page for .NET API 是一种高代码文件格式 API,您只需要进行几次 API 调用。您可以通过从 Downloads 部分下载其 DLL 文件或使用以下 NuGet 安装命令来访问 API:
PM> Install-Package Aspose.Page
在 C# 中以编程方式将 XPS 文件合并为 XPS 格式
您可以通过以下步骤将不同的 XPS 文件合并到一个 XPS 文档中:
- 加载输入 XPS 文件。
- 指定要合并的其他 XPS 文件。
- 将这些文件一起附加到一个 XPS 文件中。
下面的代码片段将多个 XPS 文件合并到 C# 中的单个 XPS 文档中:
// 初始化 XPS 输出流
using (System.IO.Stream outStream = System.IO.File.Open("mergedXPSfiles.xps", System.IO.FileMode.Create, System.IO.FileAccess.Write))
{
// 加载 XPS 文档
XpsDocument document = new XpsDocument("input.xps", new XpsLoadOptions());
// 创建一组将与第一个文件合并的 XPS 文件
string[] filesToMerge = new string[] { "input2.xps", "input3.xps" };
// 合并 XPS 文件以输出 XPS 文档
document.Merge(filesToMerge, outStream);
}
在 C# 中以编程方式合并 XPS 文件
您可以按照以下步骤将多个 XPS 文件合并为一个文件:
- 加载 XPS 文件以附加其他文件。
- 为输出文件创建渲染设备。
- 创建要合并的 XPS 文件数组。
- 合并 XPS 文件并将输出保存为 PDF 格式。
以下代码显示了如何在 C# 中以编程方式合并 XPS 文件并将输出保存为 PDF 格式:
// 初始化 PDF 输出流
using (Stream pdfStream = File.Open("mergedXPSfiles.pdf", FileMode.Create, FileAccess.Write))
// 初始化 XPS 输入流
using (Stream xpsStream = File.Open("input.xps", FileMode.Open, FileAccess.Read))
{
// 从流中加载第一个 XPS 文档
XpsDocument document = new XpsDocument(xpsStream, new XpsLoadOptions());
// 为 PDF 格式创建渲染设备
PdfDevice device = new PdfDevice(pdfStream);
// 创建一组将与第一个文件合并的 XPS 文件
string[] filesToMerge = new string[] { "input2.xps", "input3.xps" };
// 合并 XPS 文件以输出 PDF 文档
document.Merge(filesToMerge, device, new PdfSaveOptions());
}
使用 C# 中的高级选项合并 XPS 文件
您可以指定不同的属性来即兴进行 XPS 合并过程。例如,您可以按照以下步骤为输出文件设置图像或文本压缩、加密、权限等:
- 加载输入 XPS 文件以合并文件。
- 初始化 PdfSaveOptions 类对象。
- 创建一个渲染设备和一个数组来合并文件。
- 合并 XPS 文件并将结果另存为 PDF。
以下代码片段演示了如何在 C# 中合并 XPS 文件:
// 初始化 PDF 输出流
using (Stream pdfStream = File.Open("mergedXPSfiles.pdf", FileMode.Create, FileAccess.Write))
// 初始化 XPS 输入流
using (Stream xpsStream = File.Open("input.xps", FileMode.Open, FileAccess.Read))
{
// 从流中加载第一个 XPS 文档
XpsDocument document = new XpsDocument(xpsStream, new XpsLoadOptions());
// 使用必要的参数初始化选项对象。
PdfSaveOptions options = new PdfSaveOptions()
{
JpegQualityLevel = 100,
ImageCompression = Aspose.Page.XPS.Presentation.Pdf.PdfImageCompression.Jpeg,
TextCompression = Aspose.Page.XPS.Presentation.Pdf.PdfTextCompression.Flate
};
// 为 PDF 格式创建渲染设备
PdfDevice device = new PdfDevice(pdfStream);
// 创建一组将与第一个文件合并的 XPS 文件
string[] filesToMerge = new string[] { "input2.xps", "input3.xps" };
// 合并 XPS 文件以输出 PDF 文档
document.Merge(filesToMerge, device, options);
}
获得免费临时许可证
您可以申请 免费临时许可证 来评估 API,没有任何限制。
在线演示
请尝试使用 XPS Merging 网络应用程序来检查文件合并功能。
结论
在本文中,您探索了如何在 C# 中以编程方式合并 XPS 文件。如果您需要讨论您的任何疑问,请在 论坛 上给我们写信。