XSL + XML -> PDF for C#
本文关键字:PDF for gt XML XSL | 更新日期: 2023-09-27 18:30:16
我知道有几个人问过这样的问题,但没有答案有助于解决我的问题。
好吧,我已经xsl
和xml
,并希望使用像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 处理器
看看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);
}