PDFBOX转换PDF为图片时JDK自动关闭

        最近做一个项目使用 PDFBOX将PDF转换为图片,跑了一段时间后Tomcat自动关闭,查看日志后发现 hs_err_pid5444.log,发现错误提示:

Stack: [0x0000000002460000,0x0000000002560000],  sp=0x000000000255e880,  free space=1018k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [fontmanager.dll+0x12ec8]

[error occurred during error reporting (printing native stack), id 0xc0000005]

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  sun.font.FileFont.getGlyphImage(JI)J+0
j  sun.font.FileFontStrike.getGlyphImagePtrs([I[JI)V+86
j  sun.font.GlyphList.mapChars(Lsun/java2d/loops/FontInfo;I)Z+37
        居然是 JDK 内部的错误,fontmanager.dll 字体错误? 分析 PDF文件发现PDF的字体 系统都是没有的:

        分析后发现如果PDF里面有系统没有的字体, JDK报错退出。太夸张了,这也行!解决的方法2种:

        1.把PDFBOX升级到最新1.6.0版本,1.6.0版本增加的判断PDF字体在系统是否存在,如果不存在就默认转换为系统的默认字体,避免的调用JDK获取系统不存在字体时报错的问题。

        2.把安装不存在的字体。

 

 

 

转载于:https://my.oschina.net/binny/blog/28070

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值