iText在windows下可以直接引用.ttf字体文件作为中文字体打印到pdf上去,但在Linux下会显示不能识别.ttf字体所在的路径。
查阅了相关的网站没有好的解决方法,只有一个英文网站上写的是将ttf字体打成jar包然后引用到项目中能够成功,这种方法我没有试过。有兴趣的朋友可以自己试试。
我的解决方法是:将ttf字体拷贝到Linux的字体库下,程序使用awt.Font创建中文字体,然后生成需要打印语句的一个图片流,再将该图片打印到PDF上去,字体如果模糊的话可以生成一个大图片然后缩放贴到PDF中。
问题是解决了,生成的pdf与先前在windows上的看起来没什么两样,只是pdf上面的字都是图片形式,不过已经能够满足大部分需要了。