iReport和JasperReport生成PDF文件中文字体问题

最近用iReport做报表,发现PDF格式的报表里面中文显示不出来,最后发现是字体设置问题。

查到并经实践后的解决方法如下:

---以下为转载内容

下载iText的亚洲语言包iTextAsian.jar,加入classpath中。同时也放入到ireport的lib目录里。

在ireport的Font选项中,PDF font name选择STSong-Light,PDF Encoding选择UniGB-UCS2-H。PDF Embedded选上。

这样出来的PDF就能显示中文。(引用自http://www.blogjava.net/kxx129/archive/2009/08/25/292518.html)

---转载内容结束

另外,关于报表标题的中文显示问题,使用如下方法:

new String(documentName.getBytes(), "iso8859-1");

转换一下编码后解决


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: jasperreport 是一个用于生成各种报表的 Java 库。在报表中,字体的使用非常重要,它决定了报表的美观程度,也影响了读者对报表内容的理解和接受程度。那么,如何在 jasperreport 中设置字体呢? 要在 jasperreport 中设置字体,首先需要明确以下几点: 1. jasperreport 支持的字体类型有哪些? jasperreport 支持字体类型非常丰富,包括 Arial、Times New Roman、宋体、黑体、楷体等等。可以根据实际需要选择适合的字体类型。 2. 如何将字体文件导入 jasperreport? 如果需要使用非系统自带的字体类型,需要将字体文件导入 jasperreport 中。可以将字体文件复制到 jasperreport 项目的 fonts 文件夹下,然后在 jasperreport 的报表模板中使用该字体。 设置字体的步骤如下: 1. 在 iReport 中打开需要设置字体的报表模板。 2. 选中需要设置字体的文本框或标签,在属性面板中找到 Font 属性。点击 ... 按钮,选择需要的字体类型。 3. 如果需要使用非系统自带的字体类型,可以选择 Custom font 选项,然后在 Custom TTF 中选择需要使用的字体文件。 4. 字体大小可通过 Size 属性来设置。 设置完字体后,可以预览报表,确保字体效果符合要求。如果有需要,可以对其他文本框或标签进行同样的操作。 总之,设置字体是 jasperreport 报表设计的一个重要环节,通过合理的字体设置,可以让报表更加美观、易读,提高报表的传达效果。 ### 回答2: JasperReport是一种流行的报告生成库,它可以生成定制化的PDF、Excel、HTML、CSV以及XML格式报告。在JasperReport中,字体设置非常重要,因为这关系到报告的可读性和外观。 首先,我们需要了解JasperReport支持的字体类型。它支持TrueType字体、OpenType字体以及Type1字体。我们可以使用这些字体来为报告中的文本区域设置字体样式。 在JasperReport中,有两种方法可以设置字体。第一种方法是使用JRDefaultFontProvider类,它可以定义全局默认字体。这个类有两个属性:defaultFontName和defaultFontSize,可以通过它们来设置默认字体。 第二种方法是在ireport设计器中单独为每个文本区域设置字体。我们可以在ireport设计器中通过选择文本区域,然后在“字体”选项卡中指定字体,大小和样式。如果您想使用自定义字体,可以将字体文件放入到项目的classpath中,并在文本区域的“Font Name”属性中指定字体文件的路径。 总的来说,JasperReport提供了很多选项来设置报告的字体,只需要选择合适的方法即可。这样,我们就可以轻松地创建高度定制化的报告,并为用户提供更好的阅读体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值