XSL + XML -> PDF for C#

本文关键字:PDF for gt XML XSL | 更新日期: 2023-09-27 18:30:16

我知道有几个人问过这样的问题,但没有答案有助于解决我的问题。

好吧,我已经xslxml,并希望使用像Apache.FOP这样的处理器生成pdf。我无法使用任何这样的JAVA程序。只是能够使用C#库/exe。

我尝试使用nFop

  • 版本 1.x 使用 Java.io 和 ..
  • 版本 2.0 无法设置 XsltSettings

我当前的软件使用XSL + XML -> HTML(使用 C# 上的标准Stystm.Xml.Xsl)和wktmltopdf从创建的HTML生成PDF。但是当表格对于页面来说太长时,它们会被拆分,并且在下一页上你没有任何列标题(这对我的问题非常重要)。

我认为纯 C 没有免费的 FO 处理器

XSL + XML -> PDF for C#

看看FoNET。

public static bool XMLToPDF(string pXmlFile, string pXslFile, string pFoFile, string pPdfFile)
{
    string lBaseDir = System.IO.Path.GetDirectoryName(pXslFile);
    XslCompiledTransform lXslt = new XslCompiledTransform();
    lXslt.Load(pXslFile);
    lXslt.Transform(pXmlFile, pFoFile);
    FileStream lFileInputStreamFo = new FileStream(pFoFile, FileMode.Open);
    FileStream lFileOutputStreamPDF = new FileStream(pPdfFile, FileMode.Create);
    FonetDriver lDriver = FonetDriver.Make();
    lDriver.BaseDirectory = new DirectoryInfo(lBaseDir);
    lDriver.CloseOnExit = true;
    lDriver.Render(lFileInputStreamFo, lFileOutputStreamPDF);
    lFileInputStreamFo.Close();
    lFileOutputStreamPDF.Close();
    return System.IO.File.Exists(pPdfFile);
}