itext-2.1.7.jar和itextasian-1.5.2.jar 在 maven 项目依赖不上。问题解决。
2018-01-09 16:54
686 查看
问题描述:java 导出 PDF 文件 遇到报错
Exception in thread "main" com.lowagie.text.DocumentException: Font 'STSong-Light' with 'UniGB-UCS2-H' is not recognized.
原因:
iText5.x版本以上中的font和encoding文件都是从String RESOURCE_PATH = "com/itextpdf/text/pdf/fonts/"加载的,而老itextasian.jar的包名是com.lowagie.text.pdf.fonts, 包名不一致导致路径错误,。
解决方案:
1、不要使用 itextasian-1.5.2.jar 了。自己下载一套所需字体文件,比如宋体 SIMSUN.TTF。 要是 .TTF 文件。其他文件好像不能读取。把文件放到 根目录下。
2、把创建 font 的方法 改造为下面这行即可。
3、这样的做的好处是不用 上线的时候再通过 Linux 系统 修改字体设置。
Exception in thread "main" com.lowagie.text.DocumentException: Font 'STSong-Light' with 'UniGB-UCS2-H' is not recognized.
原因:
iText5.x版本以上中的font和encoding文件都是从String RESOURCE_PATH = "com/itextpdf/text/pdf/fonts/"加载的,而老itextasian.jar的包名是com.lowagie.text.pdf.fonts, 包名不一致导致路径错误,。
解决方案:
1、不要使用 itextasian-1.5.2.jar 了。自己下载一套所需字体文件,比如宋体 SIMSUN.TTF。 要是 .TTF 文件。其他文件好像不能读取。把文件放到 根目录下。
2、把创建 font 的方法 改造为下面这行即可。
BaseFont bfChinese = BaseFont.createFont("/SIMSUN.TTF", BaseFont.IDENTITY_H,BaseFont.NOT_EMBEDDED);
3、这样的做的好处是不用 上线的时候再通过 Linux 系统 修改字体设置。
相关文章推荐
- IDEA引MAVEN项目jar包依赖导入问题解决
- maven项目由于多个依赖中含有同一个jar包导致的冲突问题的解决办法
- IDEA引MAVEN项目jar包依赖导入问题解决
- Maven依赖之解决Maven优先使用Eclipse工作空间项目而非Maven库jar包有关问题
- 利用Myeclipse为现有项目添加maven支持,傻瓜式操作即可轻松解决jar包依赖问题
- maven中package和install的区别。解决找不到依赖项目的jar包问题
- 解决使用maven打包项目时,依赖jar先解压成class在打包的问题
- IDEA引MAVEN项目jar包依赖导入问题解决
- 查找maven依赖的jar mvn dependency:tree解决多项目多引入jar包版本导致的问题
- IDEA引MAVEN项目jar包依赖导入问题解决方法
- Eclipse+Maven快速生成Web项目,解决部署时Maven lib依赖问题
- 解决maven生成的web项目下的servlet.jar与tomcat自带servlet.jar冲突的问题
- Maven依赖之解决Maven优先使用Eclipse工作空间项目而非Maven库jar包问题
- maven web 项目 没有spring-web.jar的问题解决方法
- Maven教程-解决web项目发布到tomcat中没有lib依赖的问题
- 解决 Eclipse 导入项目后 Maven Dependencies missing jar 问题
- 解决Maven项目相互依赖/循环依赖/双向依赖的问题
- Spring Tool Suite无法现在aspectjweaver.jar这个Maven依赖问题解决
- Maven中解决system的jar依赖,打包复制问题
- web项目中遇到的Maven包依赖冲突问题解决