2013-04-25 38 views
11

生成報告:JasperReports的:可以看到背景圖像中PDF導出,但不是在DOCX出口

下面的代碼駐留在Servlet和同時生成「letter.docx」 word文檔下載和「pika.pdf 「C中的文件:

我能夠看到我在pika中定義的背景圖像,但不能在」字母「中定義。

 InputStream is = request.getServletContext().getResourceAsStream("/resources/reports/" +name);  
     JasperReport jr = JasperCompileManager.compileReport(is);       
     JasperPrint jp = JasperFillManager.fillReport(jr, params, ds);  
     JRExporter exp = new JRDocxExporter(); 
     exp.setParameter(JRExporterParameter.JASPER_PRINT, jp);   
     ByteArrayOutputStream bos = new ByteArrayOutputStream(); 
     exp.setParameter(JRExporterParameter.OUTPUT_STREAM, bos);  
     exp.exportReport(); 

     JasperExportManager.exportReportToPdfFile(jp, "C:\\pika.pdf"); 

     byte[] bytes = bos.toByteArray();  

     response.reset();  
     response.setContentType("application/octet-stream"); 
     response.setHeader("Content-disposition", "attachment; filename=\"letter.docx\"");    
     response.getOutputStream().write(bytes); 
     response.getOutputStream().flush(); 
     response.getOutputStream().close();  
+0

你的圖片是什麼格式?你有沒有試過改變格式? – 2018-01-06 05:03:01

+0

@RuslanLópezCarropng圖片 – SinistraD 2018-01-09 17:14:00

回答

1

在碧玉社區Looking for an answer,我可以看到你不是第一個問這個。 Here is another question like yours全都表示您無法在文檔報告中將圖片設置爲背景。 我在旅行中發現的最後一件事是三種選擇: JOD Reports最激進的選擇,如果你可以改變你的報告引擎,檢查了這一點。 Other tutorial顯示如何嵌入圖像,但我不確定在Word文檔特定的情況下工作。 The last tutorial在這裏,在這裏,有點味道把文字作爲背景。

希望這會有所幫助,歡呼聲。

1

我的案件信息不足,但是一旦我有一個非常令人討厭的Excel導出問題,一個單元格並未在XLS中顯示,但在PDF中顯示正常。我發現只是同一列的標題帶和值帶之間的單個像素錯位。這爲每個值行帶來了額外的單元格,JR無法正確填充它。 因此,根據以前的經驗,我的建議是檢查JRXML中的錯位。由於MS Office格式不能很好地標準化爲PDF或HTML格式,因此它們的出口往往會更加「出毛病」。