最近使用ireport设计标签模板,用户要求使用Times New Roman加粗字体,但是、在ireport中选择了如下,生成的pdf字体格式却不变。

ireport字体无效处理

 

 

 看了下jasperreports-fonts-4.5.1.jar下的文件,打开fonts.xml,发现没有配置Times New Roman的字体文件,参考了http://blog.sina.com.cn/s/blog_a59b6d310102wjza.html,进行以下处理

ireport字体无效处理

 

 

 1、打开电脑C:\Windows\Fonts,找到Times New Roman文件,复制出来粘贴到一个临时文件夹,会发现变成4个ttf文件

ireport字体无效处理

 

 

2、直接用winrar解压jasperreports-fonts-4.5.1.jar, 将4个ttf文件放到net.sf.jasperreports.fonts.dejavu包下,并在fonts.xml文件添加以下内容:

<fontFamily name="Times New Roman">
        <normal>net/sf/jasperreports/fonts/dejavu/times.ttf</normal>
        <bold>net/sf/jasperreports/fonts/dejavu/timesbd.ttf</bold>
        <italic>net/sf/jasperreports/fonts/dejavu/timesi.ttf</italic>
        <boldItalic>net/sf/jasperreports/fonts/dejavu/timesbi.ttf</boldItalic>
        <pdfEncoding>Identity-H</pdfEncoding>
        <pdfEmbedded>true</pdfEmbedded>
        
</fontFamily>

3、重新打包成jar,打开cmd命令行,打开到D:\jasperreports-fonts-4.5.1(我把jar包直接解压到D盘),执行 jar cf jasperreports-fonts-4.5.1.jar  * ,则生成jasperreports-fonts-4.5.1.jar,替换项目中的jar包,重新编译就可以生成Times New Roman加粗字体的pdf了。下面上效果图对比

ireport字体无效处理

 

 

 

ireport字体无效处理

 

 

相关文章:

  • 2021-05-19
  • 2021-05-25
  • 2021-09-26
  • 2021-10-06
  • 2021-07-16
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-12-11
  • 2021-12-23
  • 2021-04-05
  • 2021-11-12
  • 2022-12-23
  • 2021-08-03
  • 2021-08-05
相关资源
相似解决方案