
XML(可扩展标记语言) 是一种广泛使用的数据兼容格式,而 PDF(可移植文档格式) 是创建和共享可读和可打印格式文档的首选。在本指南中,我们将探讨如何使用 C# 无缝地将 XML 转换为 PDF。
为什么将 XML 转换为 PDF?
在深入技术细节之前,让我们简要讨论一下您为什么需要将 XML 转换为 PDF。XML 非常适合存储数据,但在视觉呈现方面并不特别用户友好。另一方面,PDF 提供了一种精美且标准化的格式用于呈现信息。通过将 XML 转换为 PDF,您可以轻松创建专业外观的文档,适合共享、打印和存档目的。
XML 转 PDF 转换器 - C# API 安装
您可以通过下载 DLL 文件或运行以下 NuGet 安装命令,在您的端安装 Conholdate.Total for .NET:
PM> NuGet\Install-Package Conholdate.Total
将 XML 转换为 PDF 在 C# 中
对于这个 C# 示例中的 XML 转 PDF 转换,我们将使用以下示例 XML 文件:
<?xml version="1.0" encoding="utf-8" ?>
<Document xmlns="Aspose.Pdf">
<Page id="mainPage">
<TextFragment>
<TextSegment>Hello</TextSegment>
</TextFragment>
<TextFragment>
<TextSegment>World!</TextSegment>
</TextFragment>
</Page>
</Document>
接下来,您需要按照以下步骤进行 XML 到 PDF 的转换:
- 实例化一个 Document 类对象来加载输入的 XML 文件。
- 使用 BindXml 方法绑定源文件。
- 将 XML 转换为 PDF 使用 Save 方法。
以下示例代码展示了如何在 C# 中将 XML 转换为 PDF:
// 实例化文档对象
Document doc = new Document();
// 绑定源 XML 文件
doc.BindXml(dataDir + "input.xml");
// 将 XML 转换为 PDF
doc.Save(dataDir + "XMLToPDF.pdf");
然而,这里值得注意的是,源 XML 文件应遵循 XSD schema 进行转换。
将 XML 和 XSLT 转换为 PDF 的 C# 代码
在某些情况下,您可能有一个自定义 XML 文件,需要生成 PDF 文档。因此,您可以创建一个 XSLT 文件来处理自定义 XML 文件,如下列示例文件中所述:
示例 XML 文件
<?xml version="1.0" encoding="utf-8" ?>
<Contents>
<Content>Hello World!</Content>
</Contents>
示例 XSLT 文件
<?xml version="1.0" encoding="utf-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="text()"/>
<xsl:template match="/Contents">
<html>
<Document xmlns="Aspose.Pdf" IsAutoHyphenated="false">
<PageInfo>
<DefaultTextState
Font = "Helvetica" FontSize="8" LineSpacing="4"/>
<Margin Left="5cm" Right="5cm" Top="3cm" Bottom="15cm" />
</PageInfo>
<Page id="mainSection">
<TextFragment>
<TextSegment>
<xsl:value-of select="Content"/>
</TextSegment>
</TextFragment>
</Page>
</Document>
</html>
</xsl:template>
</xsl:stylesheet>
现在以下步骤详细说明了如何在 C# 中将 XML 和 XSLT 转换为 PDF 文档:
- 创建 Document 类的对象。
- 绑定 XML 和 XSLT 文件。
- 保存输出的 PDF 文档。
下面的代码片段解释了如何在 C# 中将 XML 和 XSLT 转换为 PDF:
//创建PDF文档
Aspose.Pdf.Document pdf = new Aspose.Pdf.Document();
//绑定 XML 和 XSLT 文件
try
{
pdf.BindXml("hello-world.xml", "hello-world.xslt");
}
catch (System.Exception)
{
throw;
}
//保存文档
pdf.Save("HelloWorldXml.pdf");
免费评估许可证
您可以申请一个 free temporary license 来评估 API 的所有功能,而没有任何水印或限制。
总结
在本教程中,您学习了在 C# 中将 XML 转换为 PDF 的基本知识,以及示例代码片段和示例文件。它使您能够将 XML 数据转换为视觉上吸引人且便于分享的 PDF 文档。无论您是构建报告工具、生成发票还是创建文档,XML 到 PDF 的转换将简化您应用程序中的文档转换过程。如有任何疑问,请随时通过 forum 联系我们。