为编程爱好者分享易语言教程源码的资源网
好用的代理IP,游戏必备 ____广告位招租____ 服务器99/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器
好用的代理IP,游戏必备 ____广告位招租____ 服务器低至38/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器

网站首页 > 网络编程 正文

XML转换指南!快速使用Aspose.PDF将XML转换为PDF

三叶资源网 2022-09-02 20:18:50 网络编程 134 ℃ 0 评论

用于ASP.NET API的Aspose.PDF广泛支持XML转换功能,因为根据API用户的要求,它包含许多相关的增强功能,可以使用将XML导出为PDF的高效功能来提升.NET应用程序。

在本文中,我们将使用C#将XML文件转换为PDF。考虑以下与使用C#进行XML转换有关的用例:

  • 将XML转换为PDF
  • 在XML中使用HTML并转换为PDF
  • 将XML和XSLT转换为PDF

目前,.NET版Aspose.PDF升级到v20.6版,优化提取的页面丢失问题,修复PDF转换为HTML时的一些问题,感兴趣的朋友可点击下载最新版。(点击文末“了解更多”下载最新版)

将XML转换为PDF

要将XML转换为PDF,您需要遵循Aspose.PDF for .NET API的XML Schema,该XML Schema是XSD文件。以下是一个XML文件,我们将其转换为PDF,作为Hello World演示。

 
<?xml version="1.0" encoding="utf-8" ?> <Document xmlns="Aspose.Pdf"> <Page id="mainSection"> <HtmlFragment> <![CDATA[ <font style="font-family:Tahoma; font-size:40px;">This is Html String.</font> ]]> </HtmlFragment> </Page> </Document>

需要按照以下步骤将XML转换为PDF文件:

  • 初始化 Document 类的对象
  • 使用BindXml方法加载XML文件
  • 保存转换后的PDF文件

以下代码段显示了如何在C#中将XML转换为PDF:

// Instantiate Document object
Document doc = new Document();
// Bind source XML file
doc.BindXml(dataDir + "XML.xml");
// Convert XML to PDF
doc.Save(dataDir + "XMLToPDF.pdf");

在XML中使用HTML并转换为PDF

有时可能需要先将XML中的HTML转换为HTML。.NET API的Aspose.PDF也支持此功能。但是,HTML和XML标签非常相似。因此,需要指定CDATA标记,以便不将HTML解析为XML标记。下面的示例XML文件包括用CDATA表示的HTML,以避免出现任何异常:

<?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文件
  • 保存输出的PDF文件

下面的代码片段显示了如何在C#中将包含HTML的XML文件转换为PDF:

// Instantiate Document object
Document doc = new Document();
// Bind source XML file
doc.BindXml(dataDir + "XML.xml");
// Convert XML to PDF
doc.Save(dataDir + "XMLToPDF.pdf");

将XML和XSLT转换为PDF

有时,可能已有一个包含重要应用程序数据的XML文件,并且想使用该XML文件生成PDF报告。在这种情况下,可以创建XSLT文件,以将现有XML文档转换为Aspose.PDF的兼容XML文档。然后,可以继续将XML转换为PDF。让我们通过简单而基本的示例来学习这一点:

<?xml version="1.0" encoding="utf-8" ?>
<Contents>
  <Content>Hello World!</Content>
</Contents>
<?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>

我们会注意到,该XML文件不遵循Aspose.PDF for .NET API的XML模式。但是,XSLT文件将其转换为所需的兼容性。现在,可以按照以下步骤使用XSLT将此类XML转换为PDF:

  • 初始化PDF 文档
  • 绑定 XML和XSLT文件
  • 保存输出的PDF文档

下面的代码段基于以下步骤,这些步骤显示了如何在C#中将XML转换为PDF:

//Create pdf document
Aspose.Pdf.Document pdf = new Aspose.Pdf.Document();
//Bind XML and XSLT files to the document
try
{
    pdf.BindXml(dataDir + "\\HelloWorld.xml", dataDir + "\\HelloWorld.xslt");
}
catch (System.Exception)
{

    throw;
}
            
//Save the document
 pdf.Save(dataDir + "HelloWorldUsingXmlAndXslt.pdf");

如果您有任何疑问或需求,请随时加入Aspose技术交流群(642018183),我们很高兴为您提供查询和咨询。

Tags:

来源:三叶资源网,欢迎分享,公众号:iisanye,(三叶资源网⑤群:21414575

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

百度站内搜索
关注微信公众号
三叶资源网⑤群:三叶资源网⑤群

网站分类
随机tag
多线程进度下载图片比例缩放永辉生活登陆小程序例程鼠标录制MB浏览框浏览火山封装类库单纯挖矿界面引擎系统服务Hook信息框Windows身份验证弹幕解析斗鱼弹幕助手百度贴吧验证码电商软件加密十天学会易语言Unicode列表框
最新评论