2012-11-28 105 views
2

我一直在全球網絡上搜索一些日子,以瞭解使用JasperReports(版本4.6.0)和barcode4j生成包含報告的條碼所需的庫一個簡單的設置/場景(只需要一個報告設計,填寫報告,導出爲pdf),所以沒有什麼奇特的。 在一個有點絕望的嘗試中,我剛剛添加了(使用Eclipse的Java項目,在其構建路徑中)iReport 4.6.0使用的所有庫,並試圖生成帶有條形碼的pdf報告。結果是一個不錯的pdf報告,但沒有條碼。JasperReports使用Barcode4j生成條形碼 - 庫依賴

我對JascodeReports的Barcode4J庫依賴關係(所以不是燒烤)感興趣。

在此先感謝任何人的幫助。

問候, 安德烈

回答

7

最後,我發現了一個較爲複雜的方法,我認爲(我相信這可以做簡單)

首先,我有一個具有條形碼的簡單報告元素(帶有barcode4j) - 在這裏,根據這個somewhat related answer(這實際上讓我走上了一條我認爲的正確道路),我爲這個元素添加了一種風格。我現在的風格和元素都是這樣:

<style name="Barcode" mode="Opaque" forecolor="#000066" backcolor="#FFFFFF" fill="Solid" hAlign="Left" vAlign="Top" markup="styled" fontName="SansSerif" fontSize="11"/> 
... 
<componentElement> 
<reportElement uuid="e70dd866-d0a9-4b34-8fb1-0f0b04c9dcf3" style="Barcode" x="453" y="0" width="78" height="38" isPrintInFirstWholeBand="true" isPrintWhenDetailOverflows="true"/> 
<jr:Code128 xmlns:jr="http://jasperreports.sourceforge.net/jasperreports/components" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports/components http://jasperreports.sourceforge.net/xsd/components.xsd"> 
<jr:codeExpression><![CDATA["123456789"]]></jr:codeExpression> 
</jr:Code128> 
</componentElement> 

我肯定,一些造型事情可能會被刪除(但我從風格以往的經驗標記認爲是很重要的)。

其次,我有一個代碼,如下所示,以產生具有的JasperReports導出的PDF報告:

JasperReport jasperReport = JasperCompileManager.compileReport("report.jrxml"); 
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, new HashMap(), new JREmptyDataSource()); 
JasperExportManager.exportReportToPdfFile(jasperPrint, "result.pdf"); 

第三,我有庫如屏幕截圖如下(添加圖片由於缺少時間):

eclipse library depedencies

希望這將幫助其他人也 - 優化s,更正,改進(使其更加簡潔和優化)是最受歡迎的。

備註:JasperReports庫的使用版本對應於它們的4.6.0版本,Barcode4相關的庫也適用於Barcode4j-2.0。

問候, 安德烈