我正在使用freemarker设计报告,遇到了一个问题:我需要将处理后的输出以PDF格式呈现。我想做的是将HTML + CSS freemarker模板传递给freemarker引擎,并将处理后的HTML输出为PDF。目前的问题在于如何将处理后的freemarker转换为PDF。
现在的问题是如何将这两个代码片段组合起来生成pdf文件?
非常感谢所有的帮助。
祝好,
MilindaD
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文件?
非常感谢所有的帮助。
祝好,
MilindaD