我只用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的附加組件有什麼問題? –