我只用iText
开发了一个报告(没有和独立于任何db数据源)。我知道用JasperReports
这很容易。但在我的情况下,我只是将报告存储在pdf文件中,或者我使用acrobat for java beans向用户显示报告。现在我需要更改我的实现代码以在Web浏览器中显示此报告,而不是保存在文件中。使用iText在网络浏览器中显示PDF文件
我该怎么做?
我只用iText
开发了一个报告(没有和独立于任何db数据源)。我知道用JasperReports
这很容易。但在我的情况下,我只是将报告存储在pdf文件中,或者我使用acrobat for java beans向用户显示报告。现在我需要更改我的实现代码以在Web浏览器中显示此报告,而不是保存在文件中。使用iText在网络浏览器中显示PDF文件
我该怎么做?
你需要2个想法,首先在浏览器上安装浏览器插件,然后在内容中设置内容处置标题为内联,否则浏览器会尝试下载它。
response.setHeader("Content-Disposition","inline; filename=\"file.pdf\"");
我假设你已经设置内容类型为application/PDF,知道如何将iText的文档转换为ByteArray,并将其发送给用户。
请注意:如果您的组织以外的人会使用此应用程序,可能没有安装pdf插件,在这种情况下,浏览将下载pdf而不是显示pdf。
如果浏览器安装了相应的附加组件,您只需将一个pdf文件拖放到浏览器中即可显示它。
或者,如果您有要呈现的PDF一个网站,你只要把一个链接:
<a href="your.pdf">link to your pdf</a>
还是你的意思是你要生成HTML的输出报表,而不是PDF?
网络浏览器通常会通过附加组件支持PDF文件,让用户选择显示PDF的附加组件有什么问题? –