将Freemarker转换为PDF

| 我在使用freemarker设计报告时,遇到一个问题,我需要PDF格式的处理后输出。 我要做的是将HTML + CSS fremarker模板传递给freemarker引擎,并将处理后的HTML输出为PDF。我当前的问题是如何将已处理的freemarker转换为PDF
    try {
        Configuration cfg = new Configuration();
        Template tpl = cfg.getTemplate(\"example.ftl\");
        OutputStreamWriter output = new OutputStreamWriter(System.out);

        Map testHashMap = new HashMap();
        testHashMap.put(\"test\", \"testValue\");

        tpl.process(testHashMap, output);

    } catch (Exception e) {
        e.printStackTrace();
    }
在互联网上搜索时,我找不到有关此主题的任何信息,但是我发现了有关iText框架的信息。
try {
    DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
    Document doc = builder.parse(new StringBufferInputStream(buf.toString()));
    ITextRenderer renderer = new ITextRenderer();
    renderer.setDocument(doc, null);
    renderer.layout();
    OutputStream os = response.getOutputStream();
    renderer.createPDF(os);
    os.close();
} catch (Exception ex) {
    ex.printStackTrace();
}
现在的问题是,如何结合这两个代码片段以生成pdf? 非常感谢所有帮助 问候, 米林达     
已邀请:
我认为最好使用两个不同的管道并将它们视为同一模型的两个不同视图。 数据-> Freemarker Transfomer-> HTML 数据-> iText转换器-> pdf 或者您可以在html上使用XSLT并使用XSL-FO(例如Apache FOP),但对我来说似乎有点过分。     
我不建议使用iText,因为它已获得AGPL许可。 如果您基于获得AGPL许可的软件来提供服务,则需要提供免费使用该服务的完整软件的权限(可能受到“单纯聚合”概念所隐含的限制)。 根据LGPL许可,您可以免费将openhtmtopdf用于商业目的。     

要回复问题请先登录注册