【问题标题】:JasperReports - Embedding chart as SVG into HTML reportJasperReports - 将图表作为 SVG 嵌入 HTML 报告
【发布时间】:2017-03-24 16:58:38
【问题描述】:

我正在使用集成到 Spring 应用程序中的 JasperReports(JasperReports 6.3.0、SpringBoot 1.4.1)。

我有一个报告(使用 Jaspersoft Studio 6.3.1 创建),其中包含一个堆积条形图。它确实可以在 pdf、xls 中正确打印。问题是html格式,它的图表显示为一个空框-当您查看源代码时,img元素的src属性为空。

我看到有人建议设置某种 Jasper 定义的 servlet 以将图像作为静态文件提供给 html 报告,尽管这对于我正在处理的环境可能会更加复杂。

我能想到的最方便的方法是以 svg 格式插入图表,以便它出现在 html 内容中 - 这是我的首选解决方案。

图表元素(在报告设计中)实际上有一个显示为 svg 的选项,尽管更改此选项似乎根本不会影响 html 输出,就像 Jasper 想要将创建的 svg 导出到文件一样,并且然后将其包含为图像。

我已经尝试了几个配置选项,但我现在有点卡住了,所以我的问题是:

我是否需要一些额外的环境设置或其他一些花哨的东西才能达到我的目标? JasperReports 是否可以实现我的要求?

提前致谢!

【问题讨论】:

  • 另见:stackoverflow.com/a/39320863/59087 ... 请注意,报告中的重叠元素会导致不希望的 HTML 布局。也许您可以发布您要解决的问题的最小工作示例? JRXML、屏幕截图和预期的 HTML 输出?

标签: html svg jasper-reports


【解决方案1】:

您需要的是 jasperreports.properties 中的以下两个属性(如果您还没有该文件,请创建它并将其放入应用程序类路径上的 jar 或文件夹中):

net.sf.jasperreports.chart.render.type=svg
net.sf.jasperreports.export.html.embed.image=true

【讨论】:

  • 并且你需要添加以下依赖: - batik-bridge - batik-svggen - xmlgraphics-commons 所有这些依赖的组ID是:org.apache.xmlgraphics
猜你喜欢
  • 2016-11-13
  • 2015-08-14
  • 2012-01-04
  • 2020-11-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多