【问题标题】:JasperReports Default FontJasperReports 默认字体
【发布时间】:2011-11-10 13:46:13
【问题描述】:

我有一个带有样式文本字段 (RTF) 的 JasperReport 模板(在服务器上生成)。此字段的内容是用户生成的,因此它可以包含客户端 PC 上安装的所有字体(称为字体 X)。如果我现在在服务器上生成报告,则没有字体 X,所以我想将所有未知字体替换为字体 Y。

但我得到的只是一个错误,即找不到字体。通常不需要关闭字体检查的功能 (net.sf.jasperreports.awt.ignore.missing.font),因为我想要检查 jrxml 的字体。

有没有办法设置默认字体(无需修改 Jasper Source)? (我已经在 J​​RStyledText 或 JRTextUtil 找到了一些要点。)

【问题讨论】:

    标签: java client-server jasper-reports


    【解决方案1】:

    您可以尝试使用 net.sf.jasperreports.default.font.name 属性。

    或者您可以使用default style

    <style name="Base" isDefault="true" ...>
    

    有关更多详细信息,您可以阅读此articleDefault Fonts and Inheritance 部分。

    更新:

    引自 JasperReports 终极指南

    我们强烈建议人们在报告中仅使用符合以下条件的字体 在字体扩展中提供。这是确保 当报告出现时,字体将可供应用程序使用 在运行时执行。使用系统字体总是带来以下风险 将报告部署在执行 没有安装这些字体。

    【讨论】:

    • jeah 我已经设置了这个属性,但我仍然需要禁用 ignore.missing.font... 有没有办法只在特定字段上忽略丢失的字体?
    • @itshorty 你的问题是什么?我以为是:is there a way to set a default font ...
    • 是的,但请保持 ignore.missing.font 启用...只有一个字段并非始终可用字体,所以我想仅针对该字段关闭字体检查。
    • 那么为这个元素设置样式呢?
    • 如果用户使用了未知字体,我会收到 JRFontNotFoundException。但我想使用所有已知的字体。
    猜你喜欢
    • 2011-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-27
    • 1970-01-01
    • 1970-01-01
    • 2012-01-18
    • 2019-10-05
    相关资源
    最近更新 更多