本人使用的itextpdf版本是5.4.3
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>itextpdf</artifactId>
<version>5.4.3</version>
</dependency>
在使用中文字体的时候,BaseFont bfChinese = BaseFont.createFont("STSongStd-Ligth","UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
中文字体不显示,而且后台报错 com.itextpdf.text.DocumentException: Font 'STSongStd-Ligth' with 'UniGB-UCS2-H' is not recognized.
度娘之后,知道是少了远东字体包,于是引入 itext-asian包
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>itext-asian</artifactId>
<version>5.2.0</version>
</dependency>
问题解决了!
但是字体的效果不是很理想,想使用自定义字体。引用方法一样,BaseFont bfChinese = BaseFont.createFont("templates/font/simhei.ttf",BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
templates/font/simhei.ttf 是字体存放路径,我事先下好了simhei.ttf字体放在项目中
字体链接:https://pan.baidu.com/s/1BtzhBuCoe0mYFDTq4tHMTQ
提取码:2kjo