JasperReport6.xPDF中⽂显⽰问题
JasperReport从6.x版本开始,PDF的中⽂问题,不再依赖iTextAsian.jar包了。统⼀改⽤font字体。JasperrReport6中字体不⽀持中⽂,需要⾃⼰扩展。 扩展中⽂的步骤如下:
1 解压jasperreports-fonts-6.1.1.jar
将jasperreports-fonts-6.1.1.jar扩展名修改为rar然后解压,
2 将字体⽂件拷贝到fonts⽬录
⽬录如下:
C:\jasperreports-fonts-6.1.1\net\sf\jasperreports\fonts\dejavu
3 修改l
打开C:\jasperreports-fonts-6.1.1\net\sf\jasperreports\fonts⽬录下的l 增加如下配置: 1<fontFamily name="⿊体">
2<normal>net/sf/jasperreports/fonts/f</normal>
3<bold>net/sf/jasperreports/fonts/f</bold>
4<italic>net/sf/jasperreports/fonts/f</italic>
5<boldItalic>net/sf/jasperreports/fonts/f</boldItalic>
6<pdfEncoding>Identity-H</pdfEncoding>
7<pdfEmbedded>true</pdfEmbedded>
8<exportFonts>
9<export key="net.sf.jasperreports.html">'⿊体', Arial, Helvetica, sans-serif</export>
10<export key="net.sf.jasperreports.xhtml">'⿊体', Arial, Helvetica, sans-serif</export>
11</exportFonts>
12</fontFamily>
4 将⽬录打包成jar
有两种打包⽅式:
4.1 Maven⽅式
C:\jasperreports-fonts-6.1.1,(需要提前准备好l)然后执⾏如下命令:
mvn package
执⾏完毕后,会在当前⽬录下看到⼀个target⽬录,点击进⼊;
逆问4.2 jar命令⽅式
进⼊C:\jasperreports-fonts-6.1.1⽬录,然后执⾏
c:\jasperreports-fonts-6.1.1>jar cvf jasperreports-fonts-6.1.1.jar .
最后的点代表所有⽂件
5 将jasperreports-fonts-6.1.1.jar安装到本地maven仓库
mvn install:install-file -DgroupId=net.sf.jasperreports -DartifactId=jasperreports-fonts -Dversion=6.1.1 -Dpackaging=jar -Dfile=c:\jasperreports-fonts-6.1.1.jar
6 在Jasperreport studio中增加字体
可以⽤上⾯⽣成的jar包,替换studio中的jar包,Windows默认安装后,jasperreport-fonts.jar包的位置是:
C:\Program Files (x86)\TIBCO\Jaspersoft Studio-6.5.1.final\lipse.osgi\55\0\.cp\lib
7、项⽬的l使⽤本地maven仓库中的c:\jasperreports-fonts-6.1.1.jar
施德扩<!-- jasperreports-->
<dependency>
<groupId>net.sf.jasperreports</groupId>
<artifactId>jasperreports</artifactId>
<version>6.6.0</version>
<exclusions>
<exclusion>
<groupId>com.lowagie</groupId>
<artifactId>itext</artifactId>
</exclusion>
<!--?可选?-->
<exclusion>
<groupId>net.sf.jasperreports</groupId>
<artifactId>jasperreports-fonts</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>net.sf.jasperreports</groupId>
<artifactId>jasperreports-fonts</artifactId>
<version>6.1.1</version>
</dependency>
<dependency>
<groupId>com.lowagie</groupId>
<artifactId>itext</artifactId>
<version>2.1.7</version>
兄长的侵控by红柳木
</dependency>
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>itext-pdfa</artifactId>
弹性夹头<version>5.5.0</version>
王虹虹</dependency>
8 报表中使⽤⾃定义字体
font中使⽤的⿊体就是f代表的系统字体
股市及时雨