如何在Maven中为Jasper Reports添加自定义字体

6
我一直在尝试按照这个页面上的示例进行操作: http://grysz.com/2010/06/01/use-custom-fonts-in-jasperreports-pdf-exporter/ 然而,当我在Maven上运行报告时,Tomcat会显示错误,指出我的字体在运行时不可用于JVM。 有没有人有为Jasper报告添加字体的经验,并能给我更好的指导以完成此操作?我已经尝试了很长时间,但似乎无法正常工作。 谢谢, Patrick

你的应用程序是基于Maven构建的吗? - Alex K
你是否构建了带有字体的JAR,并将其部署到Maven仓库中了? - Alex K
我确实尝试过了。我以为这可能与依赖项有关,但作为独立应用程序,它运行得很好。我现在只是卡在这里了。顺便说一句,现在不想让你太担心这个问题,去享受感恩节吧! - Truesky
我不太清楚“当我在Maven上运行报告时”的确切含义。 Maven可以构建项目...但它并不能真正运行报告,对吧? - mdahlman
mdahl。你是正确的,它应该像编译后的应用程序一样运行,并返回报告。 - Truesky
显示剩余2条评论
1个回答

2
使用iReport,您可以将字体导出为扩展。然后您可以:
  1. 将font.jar放置在应用程序中,并创建一个系统范围依赖项,
  2. 或者您可以将字体安装到存储库中。

顺便说一下:
使用jasperreports.properties文件,您可以跳过这些错误消息。
# ignore missing fonts in reports
net.sf.jasperreports.awt.ignore.missing.font=true

嗨,Peter。我已经尝试了两种方法。我真的不想处理缺失字体。实际上,我需要那个字体能够正常工作,所以我需要知道它是否失败(换句话说,我故意让它保持在那里)。但是我仍然遇到了JVM依赖项失败的问题。 - Truesky
好的,让我看看...你是否遇到了相同的依赖失败? - Grim
1
嘿,Peter。我给你加分了。我回去重新安装了字体,没有破折号、星号等符号,这次在Maven中可以使用了。我不知道这是否是一个经常出现的问题,但这解决了问题。 - Truesky
@Truesky 你说的“重新安装字体,不要有破折号、星号等符号”是什么意思? - Christian Vielma
哇,对不起,Christian,我错过了你的评论。字体名称中有破折号,在使用它时,我只是从字体名称中去掉了破折号并再次放置在字体文件夹中。这就解决了问题,我能够引用字体了。我相信现在肯定有更好的方法来做到这一点,但是我已经至少四年没有使用jasper了。 - Truesky

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接