我一直在使用JasperReports(版本4.6.0)和barcode4j,在一个简单的设置/场景中(只需进行报告设计,填写报告,导出为pdf),一直在搜索哪些库才能生成包含报告的条形码。 。
经过一次绝望的尝试,我刚刚添加了(使用Eclipse Java项目,在其构建路径中)iReport 4.6.0使用的所有库,并尝试生成带有条形码的pdf报告。结果是一个不错的pdf报告,但没有条形码。
我对JasperReports的Barcode4J库依赖关系(而不是烧烤)感兴趣。
最佳答案
最后,我发现了一种我认为更复杂的方法(我相信这可以更简单地完成)
首先,我有一个简单的报告,其中包含一个条形码元素(带有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");
第三,屏幕截图中我具有的库如下(由于时间不足而添加图片):
希望这也会对其他人有所帮助-非常欢迎进行优化,更正,改进(以使其更加简洁和最佳)。
注意:JasperReports库的使用版本与它们的4.6.0版本相对应,并且与条形码相关的库也适用于Barcode4j-2.0。
问候,
安德烈
关于java - 使用Barcode4j生成JasperReports条码-库依赖,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13612910/