我被要求编写一个程序,以PDF文件的形式生成报告。有两个主要的动态特性已被要求,我甚至不确定是否可能:
1)报告包含一个包含多个列的表。用户应该能够单击列标题,以按该列中的值对表行进行排序。
我从未见过用户可以点击重新排序表格结果的PDF文件,但我被告知这是可能的。
2)报告应该有一个下拉框,用户可以选择切换显示或隐藏表格的哪些行。
我很确定在PDF文件中无法做到这一点,尽管我已被告知其他情况。
所以我的问题是,哪些内容甚至可能,以及我应该使用哪个库来生成PDF文件? (该库可以使用任何编程语言。)
答案 0 :(得分:2)
不要使用PDF代替html / CSS / JavaScript /等。 PDF最适合用作不可变文档格式,而不是穷人的网页。当然,你可以将你的脚放在一个盒子里,称之为鞋子,但它实际上只是一个盒子。
答案 1 :(得分:2)
看看
您也可以download a ready-to-study sample PDF内置该功能。
答案 2 :(得分:1)
我会看看Acrobat。它有一个JavaScript实现。
答案 3 :(得分:1)
对于Java,有以下非常好且稳定的工具/库: JasperReports - 您在图形设计器中设计报表,然后以编程方式使用数据填充它。
另一个是iText。它适用于较低的lavel(实际上JasperReports是基于PDF部分构建的),因此它可能支持所请求的排序选项。
答案 4 :(得分:0)
是的,所有这些动态功能都可以通过XFA PDF表单(在LiveCycle Designer中创建)和脚本(JavaScript)实现。我们有一些在表中排序行并隐藏和显示http://www.pdfscripting.com子表单的示例,但您必须是访问它们的成员(不是免费的)。您可以找到免费的样本文件,对XFA PDF或LiveCycle Designer PDF进行互联网搜索 - 不确定,但无论如何都可以。
迪米特里 WindJack解决方案 http://www.windjack.com