我正在使用Jaspersoft Studio 5.6.
它在"设计"视图中的Jaspersoft Studio中正确显示.在预览视图中,它也正确显示(使用java或pdf).
当我从Java应用程序执行报告时,三个文本以相同的大小显示.
我注意到Bold和Italic工作正常,但是如果我改变字体(DejaVu,Arial,Times new roman等)也会被忽略.在我的应用程序生成的报告中,我总是得到相同的字体.
什么失败了?我忘记了任何配置选项吗?
该示例混合静态字段和文本字段以进行测试.
编辑:
似乎我发现了一个"解决方案"(具有副作用).
我正在生成这样的报告:
JasperRunManager.runReportToPdfStream(stream, outStream, params, datasource);
现在,以这种方式生成文本的大小在生成的pdf中是正确的:
JasperReport jasperReport = JasperCompileManager.compileReport("my/report.jrxml"); JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, params, datasource); JasperExportManager.exportReportToPdfStream(jasperPrint, outStream);
但字体类型不正确.
我认为,副作用是JasperRunManager.runReportToPdfStream不会将报告加载到内存JasperFillManager.fillReport
中.
有什么想法JasperRunManager.runReportToPdfStream
忽略字体大小?
有关为什么另一种方式忽略字体类型的任何想法?JSS和我的java应用程序都在同一台Windows机器上(因此两者都必须使用这些字体).
有什么建议避免将整个报告加载到内存中吗?
小智.. 8
问题是在使用5.6.0版编译时.
这可以通过使用5.5.1版进行编译来解决
我希望他们能解决这个问题!
问题是在使用5.6.0版编译时.
这可以通过使用5.5.1版进行编译来解决
我希望他们能解决这个问题!
我也有这个问题。您需要做的是在Java Web应用程序中升级jasperreport jar。例如,如果使用iReport 5.6.0设计报告,则将jasperreport.jar升级到6.2.1。