数据库到PDF

时间:2014-03-19 22:20:38

标签: xslt pdf pdf-generation xsl-fo pdf-form

我有一个数据库,其中包含我想用来填充“页面”的数据(此页面是在Adobe InDesign中设置样式的文档 - 但可能是另一个软件 - 并且具有各种数据的占位符) 。页面将被打印。

哪种技术最适合这项工作?我应该创建PDF表单并填充数据库中的字段吗?请注意,有些数据是“可循环的”(例如,具有产品名称,描述,价格的产品列表 - 并且列表可以是0或更多,直到设置的最大数量)。我应该看看像XSL-FO这样的东西吗?还是其他一些解决方案?

2 个答案:

答案 0 :(得分:2)

JasperReports怎么样。

您可以导出HTML格式的Jasper报告,以填充页面。

此后,您可以将其导出为PDF,CSV,Excel ......

答案 1 :(得分:0)

@ user3426114对JasperReports的建议是有效的,只是在我看来创建一个示例页面的“像素完美”版本并不是完全无足轻重的,但由于我对该产品或某些PEBKAC缺乏经验,这可能是非常好的类型问题:)

作为替代方案,假设您可以(更容易)获得文档在浏览器中正确显示的状态(使用您熟悉的任何页面创建技术,从JSP over php和asp.net到RoR)可以使用HTMLDoc将该页面转换为pdf。

另一个替代方案可能是PhantomJS,一个无头的Webkit实现。根据{{​​3}},将命令行中的页面呈现为pdf就像

一样简单
phantomjs rasterize.js 'http://en.wikipedia.org/w/index.php?title=Jakarta&printable=yes' jakarta.pdf

这最后一个替代方案具有在页面上实际运行Javascript的巨大优势,从而通过可在页面加载时运行的脚本正确呈现接收其样式的元素,据我所知HTMLDoc不会做 - 它只是渲染css + html