XML 到 XSL-FO C#.NET

XML to XSL-FO C#.NET

如何使用 C#.NET 中的 xsl 样式表 convert/transform/create 来自 XML 文档的 xsl-fo 文件?

我想要实现的是一个用于 "print" PDF 到浏览器的 REST 服务。 XML 是通过另一个 REST 服务加载的,样式表是预定义的并作为资源位于我的项目中。

这是到目前为止的代码,只是为了演示我所追求的结构:(请注意,return 类型的 String 仅用于故障排除,一旦我进一步了解就会被替换)

    public String GetPDFList(String apiquery, String template)
    {
        String returnString;

        /* BUILD QUERY TO GET XML CONTENT */
        string returnUrl = api_url + apiquery + api_key;

        /* BUILD XML CONTENT TO DOCUMENT */
        XmlDocument doc = new XmlDocument();
        doc.Load(returnUrl);

        /* GENERATE XSL-FO FILE FROM XML AND XSL STYLESHEET */
        /* TODO */

        /* GENERATE PDF FROM XSL-FO FILE */
        /* TODO */

        /* RETURN PDF TO CLIENT */
        /* TODO */

        return returnUrl; 
    }

编辑:我目前正在尝试使用 fo.net 库来实现这一点,但我找不到任何关于如何执行创建 xsl-fo 文件的单一任务的文档。

XmlDocument oXML = new XmlDocument();

oXML = LoadXml("And xml string or do the load from file");

// if data loaded from memory save to disk first
oXML.Save(xmlpath)

XslCompiledTransform xslt = new XslCompiledTransform();
xslt.Load(FoXSLtPATH);

// Execute the transform and output the results to a file.
// Ready for the FO engine to generate PDF from
xslt.Transform(xmlpath, FoToConsumeOutputPath);