Java教程

JasperReport中文打印问题

本文主要是介绍JasperReport中文打印问题,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1、使用中文展示问题

 

 展示的时候,可以发现中文不见了

 

2、 问题原因

jasperreports的jar包源码中不包含中文字体库。

 

 

3、给JasperReport Studio工具增加字体。

1) 可以在C:\Windows\Fonts下找你想要的字体文件。如微软雅黑

2) JasperReport Studio工具的Window-> Preferences -> font 中add一个华文宋体的字体

 

 

然后将带有中文的字体设置为华文宋体

 

 

编译后替换template1.jasper

然后增加以下文件

 

 fonts.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<fontFamilies>

    <!--</fontFamily>-->
    <fontFamily name="华文宋体">
        <normal>stsong/stsong.TTF</normal>
        <bold>stsong/stsong.TTF</bold>
        <italic>stsong/stsong.TTF</italic>
        <boldItalic>stsong/stsong.TTF</boldItalic>
        <pdfEncoding>Identity-H</pdfEncoding>
        <pdfEmbedded>true</pdfEmbedded>
        <exportFonts>
            <export key="net.sf.jasperreports.html">'华文宋体', Arial, Helvetica, sans-serif</export>
            <export key="net.sf.jasperreports.xhtml">'华文宋体', Arial, Helvetica, sans-serif</export>
        </exportFonts>
    </fontFamily>
</fontFamilies>

 

jasperreports_extension.properties 

net.sf.jasperreports.extension.registry.factory.simple.font.families=net.sf.jasperreports.engine.fonts.SimpleFontExtensionsRegistryFactory
net.sf.jasperreports.extension.simple.font.families.lobstertwo=stsong/fonts.xml

  

查看http://127.0.0.1:8080/testJasper,可以发现中文可以正常显示了。

 

这篇关于JasperReport中文打印问题的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!