如何使用Java生成可打印(和可保存)的表单?

这是我的情况。 我用Java编写了一个数据库应用程序。 现在(不幸的是作为事后的想法)我想从数据库中提取数据生成表单。

通过表单我的意思是一个可保存和可打印的文件(与UI或摇摆没有任何关系)。 基本上我想要一个模板表单,并从我从数据库中提取的数据填写。

这有什么简单的API吗? 我真的不关心文件格式,它只需要可以保存和打印(pdf,word,open office等)。 表格必须能够有不同的字体和可能的图像。

我查看了Apache POI的MS Word文档以及其他一些API,这些看起来非常痛苦。

有没有人对任何特定的API有过良好的体验?

谢谢你的帮助!

我推荐iText,因为它为您提供了将Graphics2D编写到PDFcanvas的function,这意味着您可以轻松地在图像中嵌入图像等。

图书馆的一个小问题是,我相信最好的例子是Bruno Lowagie的“iText in action”一书(ISBN:1932394796),其成本约为50美元。

iText可以有一个相当陡峭的学习曲线,但对于表格等,它应该相当容易。 另一个优点是它可以与例如JFreeChart结合使用。

如果您只想填写已经生成的PDF表单,那么iText就是您要走的路,因为它有一些很好的抽象来完成它。

根据您的需要,您可以使用像jasperreports这样的报表生成器,也可以使用像iText这样的pdf库

Docmosis是一个很好的库,可用于填充模板和输出各种格式。 我见过一些使用iText和Docmosis的地方,因为每个地方都有优势。

谢谢你的帮助! 我决定使用iText和JXL (Excel API)的组合。