最近在做一个将PDF文件转换成图片文件,然后传给前端展示的功能。刚开始时是用pdfbox,在本地windows环境下可以正常转换,图片没有任何问题。然后上了linux的测试环境,一样没问题。但是上了linux的生产环境之后,传出来的图片里面的中文内容就变成乱码了。

刚开始时以为是pdfBox本身有兼容性问题或者bug,因为在网上也查到资料说pdfBox转换会有乱码。后来就换了icePdf,但是结果一样,本地windows没问题,linux测试环境没问题,但生产linux环境出问题了。经过一番网上查资料折腾无果,最后想到,会不会是字库的问题,因为linux本身其实对中文支持就不是很好。最后,把linux测试环境里面的中文字库都放到了linux生产环境上面,刷新字库缓存之后,问题解决!

后来总结了一下,这个问题搞了这么久,有两个原因,一、对pdf格式文件不够了解,一开始以为它是和图片差不多,只是普通的像素组成,没想到还与字符编码有关系。2、Java的跨平台特性一直都很好,所以没有想到这个小问题会与平台本身的环境有关,花了大量时间在代码的检查上面。

因为在网上看不到有这种问题的解决办法,所以特此写了出来,希望能帮助到更多同行。

PS:如果不知道需要装什么字库文件,可以用pdf阅读器打开pdf文件,然后可以看到这个pdf文件里面用到了什么字体,然后再去一一对应的找出来,然后安装进去就可以了

转载请注明出处:http://www.cnblogs.com/Starshot/p/7481724.html

java pdfbox2 中文乱码_Java用pdfbox或icepdf转换PDF为图片时,中文乱码问题相关推荐

  1. pdfbox或icepdf转换PDF为图片时,中文乱码(出现方框)处理

    1.不需要在Linux上安装字体就能实现中文的转换 2.转换的字体可以自己去下载(百度) 3.我这个是将原先的PDF编辑表单域,动态填充模板后转换成PNG. 4.上代码............... ...

  2. pdfbox或icepdf转换PDF为图片时,中文乱码处理

    一:追查原因 出现这个原因很简单,必定是你的PDF是自己编辑的,否则不会出现此问题.而且你的Linux服务器必定没有你自己编辑的中文字体. 如:我的PDF编辑用了楷体,Linux上没有此字体就GG了 ...

  3. 使用pdfbox2.0将PDF转换为图片时后台报Cannot read JBIG2 image: jbig2-imageio is not installed错误的解决方法

    使用pdfbox2.0将PDF转换为图片时,文字分栏或复杂的页面会转换成白页面,后台报Cannot read JBIG2 image: jbig2-imageio is not installed错误 ...

  4. java pdfbox 转jpg_java实现PDF转图片的方法

    本文实例为大家分享了java实现PDF转图片的具体代码,供大家参考,具体内容如下 1.首先利用maven引入所需jar包 org.apache.pdfbox fontbox 2.0.1 org.apa ...

  5. itext 生成pdf 输出特殊符号_JAVA提取PDF内容及转换PDF为图片

    今天给大家分享一下使用java处理pdf文件,包括提取pdf文本.提取pdf图片.pdf转图片三种操作. 主要使用到的库是apache开源的pdfbox,目前最新版本是2.0.x,网上的资料一般是1. ...

  6. Linux系统Word转换PDF,文档字体乱码不显示问题解决。

    1.问题 在Windows系统中,使用Java将Word文档转换为PDF格式时,结果文档内容正常:但是在Linux系统中,转出来PDF文档出现乱码或###符号等. 2.问题原因 这个问题是由于Linu ...

  7. java : word,excel,img,ppt各种文档转换pdf格式以流方式

    前提: 面对各种文件转换pdf格式,我下面写的都是一些方法,其中每个方法都以流的方式进行参数的传递. 通过猿友的帮忙,修改了部分jar包,解决excel转换pdf导致的水印问题~ 源码链接:https ...

  8. wps linux乱码,在Deepin系统中解决wps在显示数学公式时出现乱码的问题

    本文所解决的问题是wps在显示数学公式时出现乱码,使其正常显示,在Deepin系统中应用下面解决方法成功.同时在解决wps数学公式显示时,如果把windows的字体全部复制到系统里,QQ字体会变模糊, ...

  9. docker java 中文乱码_java使用awt包在生产环境docker部署时出现中文乱码的处理

    描述: 有一个业务是需要后台生成图片,后台使用了Graphics2D类.在docker部署时,图片上的中文变成方块. 解决方案: 百度了一下,发现是生产上的docker容器下没有中文字体,需要在容器里 ...

最新文章

  1. linux系统管理及vim
  2. n皇后问题(回溯法-递归法和循环法,最小冲突法(较快解决10000级别问题))
  3. 网络流-最大流 dinic+当前弧优化(模板)
  4. 设计师找灵感?集设用作品打动世界的窗口
  5. rust怎么传送到队友_王者荣耀原初法阵怎么传送?原初法阵最多传送几个人?...
  6. 修改ranger ui的admin用户登录密码踩坑小记
  7. dw属性面板 的HTML,Dreamweaver中AP Div属性面板
  8. Echarts在同一网页按顺序展示多图
  9. cad通过钢筋大样生成钢筋明细表插件_常青藤钢筋工具系统
  10. Python的pandas安装超级详细
  11. 完全查杀VIKING(威金蠕虫)病毒与免疫补丁
  12. 大话拒绝服务攻击:DoS、DDoS、LDoS——“直男、舔狗和渣男”
  13. scipy中使用linalg.inv函数计算矩阵的逆矩阵
  14. 【Photoshop】常用快捷键记录—持续记录
  15. Cadillac CTS-V
  16. No module named 'urllib3'
  17. C/C++与Python的语法差异
  18. shell字符串切割 去除文件名后缀
  19. C# MD5 加密,解密
  20. Cortex-M3中C与汇编的交互

热门文章

  1. A股非金融上市公司全要素生产率(2000-2021年)
  2. shell基础正则表达式
  3. mysql导出nb3文件_MySQL导入导出.sql文件
  4. ShellShock(破壳漏洞)的简单分析
  5. 【渝粤教育】电大中专计算机职业素养 (3)作业 题库
  6. 0和5 (51Nod)
  7. 绕过安卓的唯一机会,可能是利用EMUI中沉睡的AI藏宝图
  8. wps表格l制作甘特图_甘特图是什么?-如何用WPS表格做甘特图
  9. En-Tan-Mo(ETM)项目周报(7.12-7.18)
  10. kmp算法中字符串前后缀公共长度的总结