XML 转 PDF C#

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 联系我们。

另请参阅