jasperrepots-fonts jar是做什么用的,如何使用它?

2022-09-04 02:49:23

我正在评估JasperReports以生成报告。我在Windows和Linux之间的报告可移植性方面存在一些问题。我找到了一个(黑客)解决方案,使其跨平台工作。但是我想知道这是做什么的:jasperreports-fonts

<dependency>
    <groupId>net.sf.jasperreports</groupId>
    <artifactId>jasperreports-fonts</artifactId>
    <version>5.6.1</version>
</dependency>

我看到它包含DejaVu Sans字体,但我不知道如何使用这个罐子(我在网络上没有发现任何东西),如果这能以优雅,简单的方式解决我的跨平台软。

enter image description here

你能告诉我更多关于这个罐子的信息吗?


答案 1

在 jasper 报告(.jrxml 文件)中,您可以使用多种字体来显示标签/文本。这些字体可能并不总是在不同的平台/操作系统上可用(例如,有些MS字体在Linux机器上不可用,除非您手动安装它们)。因此,我们将 jasper 报告中使用的字体捆绑到一个 jar 中,使它们无论底层平台如何工作。此外,您可以在字体扩展 jar 中包含自己的(自定义创建的)字体,并将它们与 jasper 报告一起发布。更多信息请点击这里

此外,还有几种方法可以配置和使用此jar。看看这个,知道最简单的方法之一。

请注意,如果 jrxml 中使用的字体在 JVM 中不可用,则在导出报告时将引发错误,如下所示:

net.sf.jasperreports.engine.util.JRFontNotFoundException:  
   Font 'Arial' is not available to the JVM.   

这可以通过两种方式解决:
1.使用jasperreport-extension.jar OR
2。将属性设置为忽略缺少的字体。例如,在 jrxml 中,您可以按如下方式进行设置:net.sf.jasperreports.awt.ignore.missing.fonttrue

<property name="net.sf.jasperreports.awt.ignore.missing.font" value="true"/>

答案 2

推荐